Refactored FeetPosition.
Addeed Blend profiles to stop -> start
This commit is contained in:
parent
9ec5388f4e
commit
b4105ffb75
Binary file not shown.
Binary file not shown.
@ -60,20 +60,15 @@ void UOLSBaseLinkedLayerAnimInstance::NativeThreadSafeUpdateSkeletonControlData(
|
||||
OrientationWarpingAlpha = GetCurveValue(EnableOrientationWarpingName);
|
||||
|
||||
bIsLeftFootFarFromTarget = UKismetAnimationLibrary::K2_DistanceBetweenTwoSocketsAndMapRange(
|
||||
GetOwningComponent(), IKFootLeft, RTS_World,
|
||||
IKTargetFootLeft, RTS_World, false,
|
||||
GetOwningComponent(), FeetPositionSettings.IKFootLeft, RTS_World,
|
||||
FeetPositionSettings.IKTargetFootLeft, RTS_World, false,
|
||||
0.f, 0.f, 0.f, 0.f) > 8.0f;
|
||||
|
||||
bIsRightFootFarFromTarget = UKismetAnimationLibrary::K2_DistanceBetweenTwoSocketsAndMapRange(
|
||||
GetOwningComponent(), IKFootRight, RTS_World,
|
||||
IKTargetFootRight, RTS_World, false,
|
||||
GetOwningComponent(), FeetPositionSettings.IKFootRight, RTS_World,
|
||||
FeetPositionSettings.IKTargetFootRight, RTS_World, false,
|
||||
0.f, 0.f, 0.f, 0.f) > 8.0f;
|
||||
|
||||
|
||||
// const float feetPositionValue = GetCurveValue(FeetPositionCurveName);
|
||||
// bIsRightFootPlanted = feetPositionValue > 0.5f;
|
||||
// bIsLeftFootPlanted = FMath::Abs(feetPositionValue) > 0.5f;
|
||||
|
||||
// If neither foot is planted, use the last valid foot
|
||||
if (!bIsRightFootFarFromTarget && !bIsLeftFootFarFromTarget)
|
||||
{
|
||||
|
||||
@ -262,20 +262,8 @@ protected:
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Settings|AnimSet|DistanceMatching")
|
||||
FName JumpDistanceCurveName = NAME_None;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Settings|AnimSet|FeetPosition")
|
||||
FName FeetPositionCurveName = NAME_None;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Settings|AnimSet|FeetPosition")
|
||||
FName IKFootRight = NAME_None;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Settings|AnimSet|FeetPosition")
|
||||
FName IKTargetFootRight = NAME_None;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Settings|AnimSet|FeetPosition")
|
||||
FName IKFootLeft = NAME_None;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Settings|AnimSet|FeetPosition")
|
||||
FName IKTargetFootLeft = NAME_None;
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Settings|FeetPosition")
|
||||
FOLSFeetPositionSettings FeetPositionSettings;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Settings|StrideWarping")
|
||||
float StrideWarpingBlendInDurationScaled = .2f;
|
||||
|
||||
@ -9,6 +9,26 @@
|
||||
#include "UObject/Object.h"
|
||||
#include "OLSAnimationData.generated.h"
|
||||
|
||||
USTRUCT(BlueprintType)
|
||||
struct FOLSFeetPositionSettings
|
||||
{
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "FeetPositionSettings")
|
||||
FName IKFootRight = NAME_None;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "FeetPositionSettings")
|
||||
FName IKTargetFootRight = NAME_None;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "FeetPositionSettings")
|
||||
FName IKFootLeft = NAME_None;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "FeetPositionSettings")
|
||||
FName IKTargetFootLeft = NAME_None;
|
||||
};
|
||||
|
||||
USTRUCT(BlueprintType)
|
||||
struct FOLSRotationMatchingData
|
||||
{
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user