분류 전체보기

    [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:..

    [UE5] Attribute Info 델리게이트 // 위젯에 데이터 (속성명, 값) 연결하기

    [UE5] Attribute Info 델리게이트 // 위젯에 데이터 (속성명, 값) 연결하기

    * 우리는 구조체 정보를 방송할거임1. 델리게이트 선언(다이나믹 : BP에서 이용 / 멀티캐스트 : 다수에게방송)2. 델리게이트 변수로 선언#include "CoreMinimal.h"#include "UI/WidgetController/AuraWidgetController.h"#include "AttributeMenuWidgetController.generated.h"struct FAuraAttributeInfo;DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FAttributeInfoSignature, const FAuraAttributeInfo&, Info);/** * */UCLASS(BlueprintType, Blueprintable)class AURA_API UAt..

    [UE5] 메뉴 위젯 컨트롤러 구현, BP내 사용가능한 위젯컨트롤러 게터 만들기, BP 상속안될때 해결방법, MVC 정리

    [UE5] 메뉴 위젯 컨트롤러 구현, BP내 사용가능한 위젯컨트롤러 게터 만들기, BP 상속안될때 해결방법, MVC 정리

    * 이전에 어떻게 했더라?HUD에서 위젯컨트롤러를 가지고있고,Getter도 가지고 있음이를 따라할것임class AURA_API AAuraHUD : public AHUD{ GENERATED_BODY()public: UPROPERTY() TObjectPtr OverlayWidget; //Getter임 UOverlayWidgetController* GetOverlayWidgetController(const FWidgetControllerParams& WCParams); void InitOverlay(APlayerController* PC, APlayerState* PS , UAbilitySystemComponent* ASC, UAttributeSet* AS);protected..