KillKiss Help

AnimInstance

개요

애니메이션 블루프린트를 위한 커스텀 AnimInstance 구성 크게 속도, 방향, 가속중인 상태인지에 대한 정보 확인

변수

UPROPERTY(VisibleDefaultsOnly, BlueprintReadOnly, Category = "AnimData|LocomotionData") float GroundSpeed; UPROPERTY(VisibleDefaultsOnly, BlueprintReadOnly, Category = "AnimData|LocomotionData") bool bHasAcceleration; UPROPERTY(VisibleDefaultsOnly, BlueprintReadOnly, Category = "AnimData|LocomotionData") float LocomotionDirection;

값 설정

  • NativeInitializeAnimation

  • NativeThreadSafeUpdateAnimation

함수를 통해, 초기에 AnimInstance의 Owner Actor에 대한 정보를 설정 후, Tick당 변화내용 확인

OwningCharacter = Cast<AKKCharacterBase>(TryGetPawnOwner()); if (OwningCharacter) { OwningMovementComponent = OwningCharacter->GetCharacterMovement(); }
GroundSpeed = OwningCharacter->GetVelocity().Size2D(); bHasAcceleration = OwningMovementComponent->GetCurrentAcceleration().SizeSquared2D() > 0.f; LocomotionDirection = UKismetAnimationLibrary::CalculateDirection(OwningCharacter->GetVelocity(), OwningCharacter->GetActorRotation());
Last modified: 07 December 2024