언리얼4 C++ 점프 애니메이션
Intro
- 언리얼 C++ 점프 애니메이션
점프 변수
AnimInstance에서 점프중인지 확인하기위한 IsInAir 변수 생성
헤더
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Pawn, Meta = (AllowPrivateAccess = true))
bool IsInAir;
cpp
auto Character = Cast<ACharacter>(Pawn);
if (Character)
{
IsInAir = Character->GetMovementComponent()->IsFalling();
}
IsFalling 함수를통해 캐릭터가 낙하중인지 bool변수 IsInAir에 저장
점프 애니메이션
점프하는 애니메이션을 시작, 루프, 착지로 나누어준다
루프는 공중에 떠있는 지점을 저장하고 착지는 시작모션을 역재생하여 바닥에 착지하는 모션을 저장
*역재생은 Rate Scale을 -로 바꿔주면 된다.
애니메이션 블루프린트
JumpStart, Loop, End 스테이트 구성
IsInAir가 True일때 점프를 시작하고 Time Remaining(Ratio)를 이용해 애니메이션이 다끝날때 쯤 Loop애니메이션 재생 캐릭터가 착지하여 IsInAir가 false가 되면 End애니메이션 재생 마찬가지로 애니메이션이 끝날때쯤 다시 Ground State로 이동하도록 구성
이때 JumpStart와 End 모션은 Loop를 꺼주어야한다.
댓글남기기