#include <PlayerAnimInstance.h>
◆ UPlayerAnimInstance()
| UPlayerAnimInstance::UPlayerAnimInstance |
( |
| ) |
|
14{
16 LocomotionBlendRatioCurveData->AddKey(0.0f, 0.0f);
17 LocomotionBlendRatioCurveData->AddKey(1.0f, 1.0f);
18
20 AnimSpeedRatioCurveData->AddKey(0.0f, 1.0f);
21 AnimSpeedRatioCurveData->AddKey(1.0f, 1.0f);
22}
FRuntimeFloatCurve AnimSpeedRatioCurvePerLocomotionSpeedRatio
Definition PlayerAnimInstance.h:42
FRuntimeFloatCurve LocomotionBlendRatioCurve
Definition PlayerAnimInstance.h:49
◆ CachePlayerMovement()
| void UPlayerAnimInstance::CachePlayerMovement |
( |
| ) |
|
|
protected |
42{
44
46 {
47 return;
48 }
49
51}
TObjectPtr< ACharacter > Owner
Definition CharacterAnimInstance.h:42
TObjectPtr< UPlayerMovementComponent > CachedPlayerMovement
Definition PlayerAnimInstance.h:62
◆ CalculateAnimPlayRate()
| float UPlayerAnimInstance::CalculateAnimPlayRate |
( |
float |
CurrentMovementSpeed, |
|
|
float |
RunSpeed |
|
) |
| const |
|
protected |
141{
143}
float EvaluateAnimSpeedRatioCurve(float NormalizedSpeedRatio) const
Definition PlayerAnimInstance.cpp:146
◆ CalculateLocomotionBlendValue()
| float UPlayerAnimInstance::CalculateLocomotionBlendValue |
( |
float |
CurrentMovementSpeed, |
|
|
float |
RunSpeed |
|
) |
| const |
|
protected |
120{
122}
float EvaluateLocomotionBlendRatioCurve(float NormalizedSpeedRatio) const
Definition PlayerAnimInstance.cpp:125
◆ EvaluateAnimSpeedRatioCurve()
| float UPlayerAnimInstance::EvaluateAnimSpeedRatioCurve |
( |
float |
NormalizedSpeedRatio | ) |
const |
|
protected |
147{
148 const float SafeNormalizedSpeedRatio = FMath::Clamp(NormalizedSpeedRatio, 0.0f, 1.0f);
149
151 {
152 return FMath::Max(AnimSpeedRatioRichCurve->Eval(SafeNormalizedSpeedRatio, 1.0f), 0.0f);
153 }
154 else
155 {
156 return 1.0f;
157 }
158}
◆ EvaluateLocomotionBlendRatioCurve()
| float UPlayerAnimInstance::EvaluateLocomotionBlendRatioCurve |
( |
float |
NormalizedSpeedRatio | ) |
const |
|
protected |
126{
127 const float SafeNormalizedSpeedRatio = FMath::Clamp(NormalizedSpeedRatio, 0.0f, 1.0f);
128
130 {
131 return FMath::Max(LocomotionBlendRichCurve->Eval(SafeNormalizedSpeedRatio, SafeNormalizedSpeedRatio), 0.0f);
132 }
133 else
134 {
135 return SafeNormalizedSpeedRatio;
136 }
137}
◆ NativeBeginPlay()
| void UPlayerAnimInstance::NativeBeginPlay |
( |
| ) |
|
|
overrideprotectedvirtual |
UCharacterAnimInstance(으)로부터 재구현되었습니다.
34{
35 Super::NativeBeginPlay();
36
38}
void CachePlayerMovement()
Definition PlayerAnimInstance.cpp:41
◆ NativeInitializeAnimation()
| void UPlayerAnimInstance::NativeInitializeAnimation |
( |
| ) |
|
|
overrideprotectedvirtual |
◆ NativeUpdateAnimation()
| void UPlayerAnimInstance::NativeUpdateAnimation |
( |
float |
DeltaSeconds | ) |
|
|
overrideprotectedvirtual |
UCharacterAnimInstance(으)로부터 재구현되었습니다.
62{
63 Super::NativeUpdateAnimation(DeltaSeconds);
64
66 {
67 return;
68 }
69
71}
float LeanAngle
Definition PlayerAnimInstance.h:55
◆ OnAttackIdleTagChanged()
| void UPlayerAnimInstance::OnAttackIdleTagChanged |
( |
const FGameplayTag |
Tag, |
|
|
int32 |
NewCount |
|
) |
| |
|
protected |
55{
58}
#define LOG_INFO(Category, Format,...)
Definition CK_UE.h:38
bool bIsAttackIdle
Definition PlayerAnimInstance.h:52
◆ TryBindTagEvent()
| void UPlayerAnimInstance::TryBindTagEvent |
( |
| ) |
|
|
overrideprotectedvirtual |
UCharacterAnimInstance(으)로부터 재구현되었습니다.
90{
91 Super::TryBindTagEvent();
92
94 {
95 return;
96 }
97
98 FOnGameplayEffectTagCountChanged& Event =
CachedASC->RegisterGameplayTagEvent(TAG_CHARACTER_STATE_COMBAT_ATTACKIDLE, EGameplayTagEventType::NewOrRemoved);
101}
TObjectPtr< UAbilitySystemComponent > CachedASC
Definition CharacterAnimInstance.h:70
FDelegateHandle AttackIdleTagEventHandle
Definition PlayerAnimInstance.h:58
void OnAttackIdleTagChanged(const FGameplayTag Tag, int32 NewCount)
Definition PlayerAnimInstance.cpp:54
◆ TryRemoveTagEvent()
| void UPlayerAnimInstance::TryRemoveTagEvent |
( |
| ) |
|
|
overrideprotectedvirtual |
UCharacterAnimInstance(으)로부터 재구현되었습니다.
105{
106 Super::TryRemoveTagEvent();
107
109 {
110 return;
111 }
112
113 FOnGameplayEffectTagCountChanged& Event =
CachedASC->RegisterGameplayTagEvent(TAG_CHARACTER_STATE_COMBAT_ATTACKIDLE, EGameplayTagEventType::NewOrRemoved);
116}
◆ UpdateAnimation()
| bool UPlayerAnimInstance::UpdateAnimation |
( |
float |
DeltaSeconds, |
|
|
float |
CurrentSpdOverride, |
|
|
float |
TargetSpdOverride |
|
) |
| |
|
overrideprotectedvirtual |
UCharacterAnimInstance(으)로부터 재구현되었습니다.
75{
77 {
78 return Super::UpdateAnimation(DeltaSeconds, CurrentSpdOverride, TargetSpdOverride);
79 }
80
85 return Super::UpdateAnimation(DeltaSeconds, CurrentMovementSpeed, TargetLocomotionBlendValue);
86}
float LocoAnimPlayRate
Definition PlayerAnimInstance.h:45
float CalculateLocomotionBlendValue(float CurrentMovementSpeed, float RunSpeed) const
Definition PlayerAnimInstance.cpp:119
float CalculateAnimPlayRate(float CurrentMovementSpeed, float RunSpeed) const
Definition PlayerAnimInstance.cpp:140
◆ AnimSpeedRatioCurvePerLocomotionSpeedRatio
| FRuntimeFloatCurve UPlayerAnimInstance::AnimSpeedRatioCurvePerLocomotionSpeedRatio |
|
protected |
X축의 정규화된 실제 속도 배율(0~1)을 Y축의 애니메이션 재생속도 배율로 변환한다.
◆ AttackIdleTagEventHandle
| FDelegateHandle UPlayerAnimInstance::AttackIdleTagEventHandle |
|
protected |
◆ bIsAttackIdle
| bool UPlayerAnimInstance::bIsAttackIdle = false |
|
protected |
◆ CachedPlayerMovement
| TObjectPtr<UPlayerMovementComponent> UPlayerAnimInstance::CachedPlayerMovement |
|
private |
◆ LeanAngle
| float UPlayerAnimInstance::LeanAngle = 0.0f |
|
protected |
◆ LocoAnimPlayRate
| float UPlayerAnimInstance::LocoAnimPlayRate = 1.0f |
|
protected |
◆ LocomotionBlendRatioCurve
| FRuntimeFloatCurve UPlayerAnimInstance::LocomotionBlendRatioCurve |
|
protected |
X축의 정규화된 실제 속도 배율(0~1)을 Y축의 Locomotion Blend 파라미터 배율(0~n)로 변환한다.
이 클래스에 대한 문서화 페이지는 다음의 파일들로부터 생성되었습니다.: