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);
|
OrientationWarpingAlpha = GetCurveValue(EnableOrientationWarpingName);
|
||||||
|
|
||||||
bIsLeftFootFarFromTarget = UKismetAnimationLibrary::K2_DistanceBetweenTwoSocketsAndMapRange(
|
bIsLeftFootFarFromTarget = UKismetAnimationLibrary::K2_DistanceBetweenTwoSocketsAndMapRange(
|
||||||
GetOwningComponent(), IKFootLeft, RTS_World,
|
GetOwningComponent(), FeetPositionSettings.IKFootLeft, RTS_World,
|
||||||
IKTargetFootLeft, RTS_World, false,
|
FeetPositionSettings.IKTargetFootLeft, RTS_World, false,
|
||||||
0.f, 0.f, 0.f, 0.f) > 8.0f;
|
0.f, 0.f, 0.f, 0.f) > 8.0f;
|
||||||
|
|
||||||
bIsRightFootFarFromTarget = UKismetAnimationLibrary::K2_DistanceBetweenTwoSocketsAndMapRange(
|
bIsRightFootFarFromTarget = UKismetAnimationLibrary::K2_DistanceBetweenTwoSocketsAndMapRange(
|
||||||
GetOwningComponent(), IKFootRight, RTS_World,
|
GetOwningComponent(), FeetPositionSettings.IKFootRight, RTS_World,
|
||||||
IKTargetFootRight, RTS_World, false,
|
FeetPositionSettings.IKTargetFootRight, RTS_World, false,
|
||||||
0.f, 0.f, 0.f, 0.f) > 8.0f;
|
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 neither foot is planted, use the last valid foot
|
||||||
if (!bIsRightFootFarFromTarget && !bIsLeftFootFarFromTarget)
|
if (!bIsRightFootFarFromTarget && !bIsLeftFootFarFromTarget)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -262,20 +262,8 @@ protected:
|
|||||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Settings|AnimSet|DistanceMatching")
|
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Settings|AnimSet|DistanceMatching")
|
||||||
FName JumpDistanceCurveName = NAME_None;
|
FName JumpDistanceCurveName = NAME_None;
|
||||||
|
|
||||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Settings|AnimSet|FeetPosition")
|
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Settings|FeetPosition")
|
||||||
FName FeetPositionCurveName = NAME_None;
|
FOLSFeetPositionSettings FeetPositionSettings;
|
||||||
|
|
||||||
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|StrideWarping")
|
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Settings|StrideWarping")
|
||||||
float StrideWarpingBlendInDurationScaled = .2f;
|
float StrideWarpingBlendInDurationScaled = .2f;
|
||||||
|
|||||||
@ -9,6 +9,26 @@
|
|||||||
#include "UObject/Object.h"
|
#include "UObject/Object.h"
|
||||||
#include "OLSAnimationData.generated.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)
|
USTRUCT(BlueprintType)
|
||||||
struct FOLSRotationMatchingData
|
struct FOLSRotationMatchingData
|
||||||
{
|
{
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user