UE5

    [UE5] Input바인딩용 클래스 생성, 클릭이벤트 발생 테스트

    [UE5] Input바인딩용 클래스 생성, 클릭이벤트 발생 테스트

    *  Input 바인딩용 클래스 생성기존 : PC에서 바인딩해줬음void AAuraPlayerController::SetupInputComponent(){ Super::SetupInputComponent(); // 부모 클래스의 SetupInputComponent() 함수 호출 // InputComponent를 UEnhancedInputComponent 형으로 변환하고 검사합니다. //Get 인핸스드 인풋 컴포넌트 UEnhancedInputComponent* EnhancedInputComponent = CastChecked(InputComponent); // MoveAction이 발생할 때 AAuraPlayerController 클래스의 Move() 함수를 바인딩합니다. ..

    [UE5] 태그-입력 연결 구현, 런타임에 입력변경 구현준비

    [UE5] 태그-입력 연결 구현, 런타임에 입력변경 구현준비

    *구현1. Data Asset 만들기#pragma once#include "CoreMinimal.h"#include "Engine/DataAsset.h"#include "AuraInputConfig.generated.h"/** * */UCLASS()class AURA_API UAuraInputConfig : public UDataAsset{ GENERATED_BODY() }; 2. 설계구조체 : InputAction, Tag변수 : 구조체( InputAction, Tag )배열을 가짐함수 : 태그에 맞는 InputAction 찾는 함수// Fill out your copyright notice in the Description page of Project Settings.#pragma onc..

    [UE5] GA 옵션들 살펴보기

    [UE5] GA 옵션들 살펴보기

    * GA 옵션들 살펴보기  * 사용하지 말것복제정책 : 기본적으로 복제임, 건들지마셈클라종료시 서버종료 : 서버가 중요하므로 쓰지마셈입력복제 : 사용자가 나쁜입력을 계속보낼수 있음. 쓰지마셈

    [UE5] GameplayAbility class 구현

    [UE5] GameplayAbility class 구현

    * GameplayAbility 구현c++ 클래스만들고 구현캐릭베이스에 GA배열 넣어주기private: UPROPERTY(EditAnywhere, Category = "Attributes") TArray> StartupAbilities;ASC에 능력(Ability)를 부여 && 활성화하는 함수를 만듬void UAuraAbilitySystemComponent::AddCharacterAbilities(const TArray>& StartupAbilities){ for(TSubclassOf AbilityClass : StartupAbilities) { FGameplayAbilitySpec AbilitySpec=FGameplayAbilitySpec(AbilityClass,1); ..

    [UE5] Gameplay Ability 개념

    [UE5] Gameplay Ability 개념

    * 게임플레이 어빌리티 : 행동 or 스킬내장기능 : 복제기능o, 예측기능o, 쿨다운기능 o(스킬사용 마나부족 , 쿨타임 등) * 어빌리티 태스크게임플레이 어빌리티 실행중에 작업을 실행하는 애ex) 이벤트발생 -> 어빌리티태스크는 델리게이트를 방송함 -> 특정 출력 핀이 실행 * GA 사용하려면 ASC에 능력을 부여해야함GASpec에 정보들을 채움이때, 서버에서 클라로 GASpec 복제함 * GA 활성화개념 * GA정리스킬, 능력 정의하는 클래스ASC에 능력 부여해야함 (서버에서 부여, 클라로 스펙 복제)사용위해 활성화되야함쿨타임개념 있음한번에 여러개 수행가능

    [UE5] 속성변경시 위젯에 즉시반영 구현

    [UE5] 속성변경시 위젯에 즉시반영 구현

    * 속성변경시 모든위젯에 방송떄림void UAttributeMenuWidgetController::BindCallbacksToDependencies(){ UAuraAttributeSet* AS = CastChecked(AttributeSet); //부모인 위젯컨트롤러가 갖고있음 for(auto& Pair : AS->TagsToAttributes) // 모든 속성들에대해(str,int...) { AbilitySystemComponent->GetGameplayAttributeValueChangeDelegate(Pair.Value()).AddLambda( //해당속성 : str,int에 대해 [this, Pair,AS](const FOnAttributeChangeData&..

    [UE5] 속성행에 GE태그 연결, 속성추가시 AS코드만 수정 // 함수포인터 사용방법

    [UE5] 속성행에 GE태그 연결, 속성추가시 AS코드만 수정 // 함수포인터 사용방법

    * 각 속생행은 각각의 태그를 가져야함 이제 우리는 this.AttributeTag에 설정해준 태그를 얻을수 있다 * TextButtonRowButton 리팩토링 * 모든속성을 방송하기1. //아래코드에서 모든 속성에 대해 노가다 -> wtfvoid UAttributeMenuWidgetController::BroadcastInitialValues(){ UAuraAttributeSet* AS = CastChecked(AttributeSet); //부모인 위젯컨트롤러가 갖고있음 check(AttributeInfo) //DA가 set되었는지 확인 FAuraAttributeInfo Info = AttributeInfo->FindAttributeInfoForTag(FAuraGameplayTags:..