캐릭터 BP 의 컴포넌트들 에서 CharacterMovement 가 아래 처럼 존재할 수있다

 

ABaseCharacter::ABaseCharacter(const FObjectInitializer& ObjectInitializer)
: Super(ObjectInitializer.SetDefaultSubobjectClass<UTDCharacterMovementComponent>(CharacterMovementComponentName))
{

 

 

ObjectInitializer 파라메터로 받는 생성자에서 상위클래스 초기화될 때 파라메터로 커스텀하게 만든 캐릭터 무브먼트 컴포넌트를 생성해주면됨.

다만 기본 Getter 인 GetCharacterMovement() 는 기본 클래스인 UCharacterMovementComponent를 리턴하므로 부를때마다 캐스팅을 하던지, 아니면 그냥 아래와 같은 래퍼를 하나 쓰는것도 간단해서 괜찮아보이긴 함.

 

FORCEINLINE UTDCharacterMovementComponent* GetTDCharacterMovement() { return Cast<UTDCharacterMovementComponent>(GetCharacterMovement()); }

 

 

 

ref : https://bbagwang.com/unreal-engine/character-movement-%EC%A0%81%EC%9A%A9-%EB%B0%A9%EB%B2%95/

반응형

+ Recent posts