Compare commits

...

2 Commits

Author SHA1 Message Date
a17d3ca74a Merge branch 'detached'
# Conflicts:
#	Content/Characters/UEFN_Mannequin/AnimationLayers/ABP_UEFN_Base_New.uasset
#	Content/Characters/UEFN_Mannequin/AnimationLayers/ABP_UEFN_FullBody_Base_New.uasset
#	Saved/AutoScreenshot.png
#	Source/OLSAnimation/Private/Data/OLSAnimationData.cpp
#	Source/OLSAnimation/Public/Data/OLSAnimationData.h
2025-07-31 17:08:30 +07:00
29d0870443 Refactored Forward Facing animation data.
Reverted back to UE5.6 -> UE5.5.
2025-07-31 17:06:58 +07:00
8 changed files with 125 additions and 108 deletions

View File

@ -1,12 +1,10 @@
{ {
"version": "1.0", "version": "1.0",
"components": [ "components": [
"Component.Unreal.Debugger",
"Component.Unreal.Ide",
"Microsoft.Net.Component.4.6.2.TargetingPack", "Microsoft.Net.Component.4.6.2.TargetingPack",
"Microsoft.VisualStudio.Component.Unreal.Workspace",
"Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL", "Microsoft.VisualStudio.Component.VC.14.38.17.8.ATL",
"Microsoft.VisualStudio.Component.VC.14.38.17.8.x86.x64", "Microsoft.VisualStudio.Component.VC.14.38.17.8.x86.x64",
"Microsoft.VisualStudio.Component.VC.Llvm.Clang",
"Microsoft.VisualStudio.Component.VC.Tools.x86.x64", "Microsoft.VisualStudio.Component.VC.Tools.x86.x64",
"Microsoft.VisualStudio.Component.Windows11SDK.22621", "Microsoft.VisualStudio.Component.Windows11SDK.22621",
"Microsoft.VisualStudio.Workload.CoreEditor", "Microsoft.VisualStudio.Workload.CoreEditor",

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 53 KiB

View File

@ -159,7 +159,8 @@ UAnimSequence* UOLSBaseLinkedLayerAnimInstance::SelectStartCycleAnimation(const
if (isAiming) if (isAiming)
{ {
return GetGaitAnimSets(isCrouching, gait).GaitAnimSet_CameraFacing.GetStartCycleFromHipDirection(hipDirection). return GetGaitAnimSets(isCrouching, gait).GaitAnimSet_CameraFacing.GetStartCycleFromHipDirection(hipDirection).
GetMovementAnimationByCardinalDirection(velocityDirection); GetMovementAnimByCardinalDirection(
velocityDirection, bIsRightFootFarFromTarget);
} }
return GetGaitAnimSets(isCrouching, gait).GaitAnimSet_ForwardFacing.StartCycle. return GetGaitAnimSets(isCrouching, gait).GaitAnimSet_ForwardFacing.StartCycle.
@ -176,7 +177,8 @@ UAnimSequence* UOLSBaseLinkedLayerAnimInstance::SelectCycleAnimation(const bool
if (isAiming) if (isAiming)
{ {
return GetGaitAnimSets(isCrouching, gait).GaitAnimSet_CameraFacing.GetCycleFromHipDirection(hipDirection). return GetGaitAnimSets(isCrouching, gait).GaitAnimSet_CameraFacing.GetCycleFromHipDirection(hipDirection).
GetMovementAnimationByCardinalDirection(velocityDirection); GetMovementAnimByCardinalDirection(
velocityDirection, bIsRightFootFarFromTarget);
} }
return GetGaitAnimSets(isCrouching, gait).GaitAnimSet_ForwardFacing.Cycle; return GetGaitAnimSets(isCrouching, gait).GaitAnimSet_ForwardFacing.Cycle;
@ -192,7 +194,8 @@ UAnimSequence* UOLSBaseLinkedLayerAnimInstance::SelectPivotAnimation(const bool
if (isAiming) if (isAiming)
{ {
return GetGaitAnimSets(isCrouching, gait).GaitAnimSet_CameraFacing.GetPivotFromHipDirection(hipDirection). return GetGaitAnimSets(isCrouching, gait).GaitAnimSet_CameraFacing.GetPivotFromHipDirection(hipDirection).
GetMovementAnimationByCardinalDirection(velocityDirection); GetMovementAnimByCardinalDirection(
velocityDirection, bIsRightFootFarFromTarget);
} }
return GetGaitAnimSets(isCrouching, gait).GaitAnimSet_ForwardFacing.Pivot.GetLeftOrRightByAngle( return GetGaitAnimSets(isCrouching, gait).GaitAnimSet_ForwardFacing.Pivot.GetLeftOrRightByAngle(
@ -208,8 +211,8 @@ UAnimSequence* UOLSBaseLinkedLayerAnimInstance::SelectStopCycleAnimation(const b
if (isAiming) if (isAiming)
{ {
return GetGaitAnimSets(isCrouching, gait). return GetGaitAnimSets(isCrouching, gait).
GaitAnimSet_CameraFacing.GetStopCycleFromHipDirection(hipDirection). GaitAnimSet_CameraFacing.GetStopCycleFromHipDirection(hipDirection).GetMovementAnimByCardinalDirection(
GetMovementAnimationByCardinalDirection(velocityDirection); velocityDirection, bIsRightFootFarFromTarget);
} }
return GetGaitAnimSets(isCrouching, gait).GaitAnimSet_ForwardFacing.StopCycle.GetLeftOrRightAnim(bIsRightFootFarFromTarget); return GetGaitAnimSets(isCrouching, gait).GaitAnimSet_ForwardFacing.StopCycle.GetLeftOrRightAnim(bIsRightFootFarFromTarget);

View File

@ -60,28 +60,6 @@ bool FOLSIdleAndTurnInPlaceAnimSet::CanPlayIdleBreakAnimation() const
return IdleAnimSet.HasAnyIdleBreaks(); return IdleAnimSet.HasAnyIdleBreaks();
} }
UAnimSequence* FOLSMovementAnimSet::GetMovementAnimationByCardinalDirection(const EOLSCardinalDirection& direction) const
{
TObjectPtr<UAnimSequence> result = nullptr;
switch (direction)
{
case EOLSCardinalDirection::EForward:
result = Forward;
break;
case EOLSCardinalDirection::EBackward:
result = Backward;
break;
case EOLSCardinalDirection::ERight:
result = Right;
break;
case EOLSCardinalDirection::ELeft:
result = Left;
break;
}
return result;
}
class UAnimSequence* FOLSMovementAnimSet_FeetPosition::GetForwardLeftOrRightFoot(const bool isRightFootFarFromTarget) const class UAnimSequence* FOLSMovementAnimSet_FeetPosition::GetForwardLeftOrRightFoot(const bool isRightFootFarFromTarget) const
{ {
return (isRightFootFarFromTarget ? RightFoot : LeftFoot); return (isRightFootFarFromTarget ? RightFoot : LeftFoot);
@ -94,7 +72,7 @@ class UAnimSequence* FOLSMovementAnimSet_ForwardFacing_StartCycle::GetForwardLef
UAnimSequence* FOLSMovementAnimSet_ForwardFacing_StartCycle::GetForward180LeftOrRightByAngle(const float angle) const UAnimSequence* FOLSMovementAnimSet_ForwardFacing_StartCycle::GetForward180LeftOrRightByAngle(const float angle) const
{ {
return (angle > 0.f) ? Forward180_R : Forward180_L; return (angle > 0.f) ? Forward180R : Forward180L;
} }
class UAnimSequence* FOLSMovementAnimSet_ForwardFacing_StartCycle::GetMovementAnimationByAngle( class UAnimSequence* FOLSMovementAnimSet_ForwardFacing_StartCycle::GetMovementAnimationByAngle(
@ -108,10 +86,10 @@ class UAnimSequence* FOLSMovementAnimSet_ForwardFacing_StartCycle::GetMovementAn
result = GetForwardLeftOrRightFoot(isRightFootFarFromTarget); result = GetForwardLeftOrRightFoot(isRightFootFarFromTarget);
break; break;
case EOLSCardinalDirection::ELeft: case EOLSCardinalDirection::ELeft:
result = Left; result = Forward90L;
break; break;
case EOLSCardinalDirection::ERight: case EOLSCardinalDirection::ERight:
result = Right; result = Forward90R;
break; break;
case EOLSCardinalDirection::EBackward: case EOLSCardinalDirection::EBackward:
result = GetForward180LeftOrRightByAngle(angle); result = GetForward180LeftOrRightByAngle(angle);
@ -121,19 +99,19 @@ class UAnimSequence* FOLSMovementAnimSet_ForwardFacing_StartCycle::GetMovementAn
return result; return result;
} }
UAnimSequence* FOLSMovementAnimSet_ForwardFacing_StopCycle::GetLeftOrRightAnim(const bool isRightFootPlanted) const
{
return Stop.GetForwardLeftOrRightFoot(isRightFootPlanted);
}
class UAnimSequence* FOLSMovementAnimSet_ForwardFacing_Pivot::GetLeftOrRightByAngle(const float angle, class UAnimSequence* FOLSMovementAnimSet_ForwardFacing_Pivot::GetLeftOrRightByAngle(const float angle,
const bool isRightFootFarFromTarget) const const bool isRightFootFarFromTarget) const
{ {
return (angle > 0.f return (angle > 0.f
? Pivot180R.GetForwardLeftOrRightFoot(isRightFootFarFromTarget) ? Pivot180R.GetForwardLeftOrRightFoot(isRightFootFarFromTarget)
: Pivot180L.GetForwardLeftOrRightFoot(isRightFootFarFromTarget)); : Pivot180L.GetForwardLeftOrRightFoot(isRightFootFarFromTarget));
} }
UAnimSequence* FOLSMovementAnimSet_ForwardFacing_StopCycle::GetLeftOrRightAnim(const bool isRightFootPlanted) const
{
return Stop.GetForwardLeftOrRightFoot(isRightFootPlanted);
}
void FOLSGaitAnimSet::GetPlayRateByLocomotionState(const EOLSLocomotionStatePlayRate& state, FVector2D& outPlayRate) const void FOLSGaitAnimSet::GetPlayRateByLocomotionState(const EOLSLocomotionStatePlayRate& state, FVector2D& outPlayRate) const
{ {
switch (state) switch (state)
@ -150,22 +128,51 @@ void FOLSGaitAnimSet::GetPlayRateByLocomotionState(const EOLSLocomotionStatePlay
} }
} }
const FOLSMovementAnimSet& FOLSGaitAnimSet_CameraFacing::GetStartCycleFromHipDirection(const EOLSHipDirection hipDirection) const void FOLSMovementAnimSet_CameraFacing_Directional::GetMovementAnimSetByCardinalDirection(const EOLSCardinalDirection& direction,
FOLSMovementAnimSet_FeetPosition& outAnimSet) const
{
switch (direction)
{
case EOLSCardinalDirection::EForward:
outAnimSet = Forward;
break;
case EOLSCardinalDirection::EBackward:
outAnimSet = Backward;
break;
case EOLSCardinalDirection::ERight:
outAnimSet = Right;
break;
case EOLSCardinalDirection::ELeft:
outAnimSet = Left;
break;
}
}
UAnimSequence* FOLSMovementAnimSet_CameraFacing_Directional::GetMovementAnimByCardinalDirection(const EOLSCardinalDirection& direction,
const bool isRightFootFarFromTarget) const
{
FOLSMovementAnimSet_FeetPosition animSet;
GetMovementAnimSetByCardinalDirection(direction, animSet);
return animSet.GetForwardLeftOrRightFoot(isRightFootFarFromTarget);
}
const FOLSMovementAnimSet_CameraFacing_Directional& FOLSGaitAnimSet_CameraFacing::GetStartCycleFromHipDirection(const EOLSHipDirection hipDirection) const
{ {
return (hipDirection == EOLSHipDirection::EForward) ? StartCycle_HipForward : StartCycle_HipBackward; return (hipDirection == EOLSHipDirection::EForward) ? StartCycle_HipForward : StartCycle_HipBackward;
} }
const FOLSMovementAnimSet& FOLSGaitAnimSet_CameraFacing::GetCycleFromHipDirection(const EOLSHipDirection hipDirection) const const FOLSMovementAnimSet_CameraFacing_Directional& FOLSGaitAnimSet_CameraFacing::GetCycleFromHipDirection(const EOLSHipDirection hipDirection) const
{ {
return (hipDirection == EOLSHipDirection::EForward) ? Cycle_HipForward : Cycle_HipBackward; return (hipDirection == EOLSHipDirection::EForward) ? Cycle_HipForward : Cycle_HipBackward;
} }
const FOLSMovementAnimSet& FOLSGaitAnimSet_CameraFacing::GetPivotFromHipDirection(const EOLSHipDirection hipDirection) const const FOLSMovementAnimSet_CameraFacing_Directional& FOLSGaitAnimSet_CameraFacing::GetPivotFromHipDirection(const EOLSHipDirection hipDirection) const
{ {
return (hipDirection == EOLSHipDirection::EForward) ? Pivot_HipForward : Pivot_HipBackward; return (hipDirection == EOLSHipDirection::EForward) ? Pivot_HipForward : Pivot_HipBackward;
} }
const FOLSMovementAnimSet& FOLSGaitAnimSet_CameraFacing::GetStopCycleFromHipDirection(const EOLSHipDirection hipDirection) const const FOLSMovementAnimSet_CameraFacing_Directional& FOLSGaitAnimSet_CameraFacing::GetStopCycleFromHipDirection(const EOLSHipDirection hipDirection) const
{ {
return (hipDirection == EOLSHipDirection::EForward) ? StopCycle_HipForward : StopCycle_HipBackward; return (hipDirection == EOLSHipDirection::EForward) ? StopCycle_HipForward : StopCycle_HipBackward;
} }

View File

@ -16,19 +16,20 @@ struct FOLSFeetPositionSettings
public: public:
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "FeetPositionSettings") UPROPERTY(EditAnywhere, BlueprintReadOnly)
FName IKFootRight = NAME_None; FName IKFootRight = NAME_None;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "FeetPositionSettings") UPROPERTY(EditAnywhere, BlueprintReadOnly)
FName IKTargetFootRight = NAME_None; FName IKTargetFootRight = NAME_None;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "FeetPositionSettings") UPROPERTY(EditAnywhere, BlueprintReadOnly)
FName IKFootLeft = NAME_None; FName IKFootLeft = NAME_None;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "FeetPositionSettings") UPROPERTY(EditAnywhere, BlueprintReadOnly)
FName IKTargetFootLeft = NAME_None; FName IKTargetFootLeft = NAME_None;
}; };
#pragma region Idle and Turn In-Place AnimSets
USTRUCT(BlueprintType) USTRUCT(BlueprintType)
struct FOLSTurnInPlaceAnimSet struct FOLSTurnInPlaceAnimSet
{ {
@ -40,16 +41,16 @@ public:
public: public:
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "TurnInPlace Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly)
TObjectPtr<class UAnimSequence> TurnInPlace_90_L = nullptr; TObjectPtr<class UAnimSequence> TurnInPlace_90_L = nullptr;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "TurnInPlace Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly)
TObjectPtr<class UAnimSequence> TurnInPlace_90_R = nullptr; TObjectPtr<class UAnimSequence> TurnInPlace_90_R = nullptr;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "TurnInPlace Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly)
TObjectPtr<class UAnimSequence> TurnInPlace_180_L = nullptr; TObjectPtr<class UAnimSequence> TurnInPlace_180_L = nullptr;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "TurnInPlace Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly)
TObjectPtr<class UAnimSequence> TurnInPlace_180_R = nullptr; TObjectPtr<class UAnimSequence> TurnInPlace_180_R = nullptr;
}; };
@ -66,13 +67,13 @@ public:
public: public:
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Idle Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly)
TArray<class UAnimSequence*> IdleBreaks; TArray<class UAnimSequence*> IdleBreaks;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Idle Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly)
TObjectPtr<class UAnimSequence> Idle = nullptr; TObjectPtr<class UAnimSequence> Idle = nullptr;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Idle Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly)
TObjectPtr<class UAnimSequence> IdleExit = nullptr; TObjectPtr<class UAnimSequence> IdleExit = nullptr;
}; };
@ -91,36 +92,13 @@ public:
public: public:
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Idle and Turn In Place Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly)
FOLSIdleAnimSet IdleAnimSet; FOLSIdleAnimSet IdleAnimSet;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Idle and Turn In Place Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly)
FOLSTurnInPlaceAnimSet TurnInPlaceAnimSet; FOLSTurnInPlaceAnimSet TurnInPlaceAnimSet;
}; };
#pragma endregion
USTRUCT(BlueprintType)
struct FOLSMovementAnimSet
{
GENERATED_BODY()
public:
class UAnimSequence* GetMovementAnimationByCardinalDirection(const EOLSCardinalDirection& direction) const;
public:
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Movement Cycle Anim Set")
TObjectPtr<class UAnimSequence> Forward = nullptr;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Movement Cycle Anim Set")
TObjectPtr<class UAnimSequence> Backward = nullptr;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Movement Cycle Anim Set")
TObjectPtr<class UAnimSequence> Right = nullptr;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Movement Cycle Anim Set")
TObjectPtr<class UAnimSequence> Left = nullptr;
};
USTRUCT(BlueprintType) USTRUCT(BlueprintType)
struct FOLSMovementAnimSet_FeetPosition struct FOLSMovementAnimSet_FeetPosition
@ -133,14 +111,15 @@ public:
public: public:
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Movement Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly)
TObjectPtr<class UAnimSequence> LeftFoot = nullptr; TObjectPtr<class UAnimSequence> LeftFoot = nullptr;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Movement Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly)
TObjectPtr<class UAnimSequence> RightFoot = nullptr; TObjectPtr<class UAnimSequence> RightFoot = nullptr;
}; };
#pragma region Forward Facing Anim Sets
USTRUCT(BlueprintType) USTRUCT(BlueprintType)
struct FOLSMovementAnimSet_ForwardFacing_StartCycle struct FOLSMovementAnimSet_ForwardFacing_StartCycle
{ {
@ -156,20 +135,20 @@ public:
public: public:
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Movement Start Cycle Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly, meta = (DisplayName = "Start Forward Left or Right Foot"))
FOLSMovementAnimSet_FeetPosition Forward; FOLSMovementAnimSet_FeetPosition Forward;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Movement Start Cycle Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly, meta = (DisplayName = "Start Forward Turn 180 Left"))
TObjectPtr<class UAnimSequence> Forward180_L = nullptr; TObjectPtr<class UAnimSequence> Forward180L = nullptr;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Movement Start Cycle Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly, meta = (DisplayName = "Start Forward Turn 180 Right"))
TObjectPtr<class UAnimSequence> Forward180_R = nullptr; TObjectPtr<class UAnimSequence> Forward180R = nullptr;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Movement Start Cycle Anim Set")
TObjectPtr<class UAnimSequence> Right = nullptr;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Movement Start Cycle Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly, meta = (DisplayName = "Start Forward Turn 90 Left"))
TObjectPtr<class UAnimSequence> Left = nullptr; TObjectPtr<class UAnimSequence> Forward90L = nullptr;
UPROPERTY(EditAnywhere, BlueprintReadOnly, meta = (DisplayName = "Start Forward Turn 90 Right"))
TObjectPtr<class UAnimSequence> Forward90R = nullptr;
}; };
USTRUCT(BlueprintType) USTRUCT(BlueprintType)
@ -184,10 +163,10 @@ public:
public: public:
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Movement Pivot Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly, meta = (DisplayName = "Pivot Turn 180 Left"))
FOLSMovementAnimSet_FeetPosition Pivot180L; FOLSMovementAnimSet_FeetPosition Pivot180L;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Movement Pivot Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly, meta = (DisplayName = "Pivot Turn 180 Right"))
FOLSMovementAnimSet_FeetPosition Pivot180R; FOLSMovementAnimSet_FeetPosition Pivot180R;
}; };
@ -202,9 +181,38 @@ public:
public: public:
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Movement Stop Cycle Anim Set") UPROPERTY(EditAnywhere, BlueprintReadOnly, meta = (DisplayName = "Stop Left or Right Foot"))
FOLSMovementAnimSet_FeetPosition Stop; FOLSMovementAnimSet_FeetPosition Stop;
}; };
#pragma endregion
USTRUCT(BlueprintType)
struct FOLSMovementAnimSet_CameraFacing_Directional
{
GENERATED_BODY()
protected:
void GetMovementAnimSetByCardinalDirection(const EOLSCardinalDirection& direction, FOLSMovementAnimSet_FeetPosition& outAnimSet) const;
public:
class UAnimSequence* GetMovementAnimByCardinalDirection(const EOLSCardinalDirection& direction, const bool isRightFootFarFromTarget) const;
public:
UPROPERTY(EditAnywhere, BlueprintReadOnly)
FOLSMovementAnimSet_FeetPosition Forward;
UPROPERTY(EditAnywhere, BlueprintReadOnly)
FOLSMovementAnimSet_FeetPosition Backward;
UPROPERTY(EditAnywhere, BlueprintReadOnly)
FOLSMovementAnimSet_FeetPosition Right;
UPROPERTY(EditAnywhere, BlueprintReadOnly)
FOLSMovementAnimSet_FeetPosition Left;
};
USTRUCT(BlueprintType) USTRUCT(BlueprintType)
struct FOLSGaitAnimSet struct FOLSGaitAnimSet
@ -257,6 +265,7 @@ public:
FOLSMovementAnimSet_ForwardFacing_StopCycle StopCycle; FOLSMovementAnimSet_ForwardFacing_StopCycle StopCycle;
}; };
USTRUCT(BlueprintType) USTRUCT(BlueprintType)
struct FOLSGaitAnimSet_CameraFacing : public FOLSGaitAnimSet struct FOLSGaitAnimSet_CameraFacing : public FOLSGaitAnimSet
{ {
@ -264,36 +273,36 @@ struct FOLSGaitAnimSet_CameraFacing : public FOLSGaitAnimSet
public: public:
const FOLSMovementAnimSet& GetStartCycleFromHipDirection(const EOLSHipDirection hipDirection) const; const FOLSMovementAnimSet_CameraFacing_Directional& GetStartCycleFromHipDirection(const EOLSHipDirection hipDirection) const;
const FOLSMovementAnimSet& GetCycleFromHipDirection(const EOLSHipDirection hipDirection) const; const FOLSMovementAnimSet_CameraFacing_Directional& GetCycleFromHipDirection(const EOLSHipDirection hipDirection) const;
const FOLSMovementAnimSet& GetPivotFromHipDirection(const EOLSHipDirection hipDirection) const; const FOLSMovementAnimSet_CameraFacing_Directional& GetPivotFromHipDirection(const EOLSHipDirection hipDirection) const;
const FOLSMovementAnimSet& GetStopCycleFromHipDirection(const EOLSHipDirection hipDirection) const; const FOLSMovementAnimSet_CameraFacing_Directional& GetStopCycleFromHipDirection(const EOLSHipDirection hipDirection) const;
public: public:
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Forward") UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Forward")
FOLSMovementAnimSet StartCycle_HipForward; FOLSMovementAnimSet_CameraFacing_Directional StartCycle_HipForward;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Forward") UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Forward")
FOLSMovementAnimSet Cycle_HipForward; FOLSMovementAnimSet_CameraFacing_Directional Cycle_HipForward;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Forward") UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Forward")
FOLSMovementAnimSet Pivot_HipForward; FOLSMovementAnimSet_CameraFacing_Directional Pivot_HipForward;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Forward") UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Forward")
FOLSMovementAnimSet StopCycle_HipForward; FOLSMovementAnimSet_CameraFacing_Directional StopCycle_HipForward;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Backward") UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Backward")
FOLSMovementAnimSet StartCycle_HipBackward; FOLSMovementAnimSet_CameraFacing_Directional StartCycle_HipBackward;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Backward") UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Backward")
FOLSMovementAnimSet Cycle_HipBackward; FOLSMovementAnimSet_CameraFacing_Directional Cycle_HipBackward;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Backward") UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Backward")
FOLSMovementAnimSet Pivot_HipBackward; FOLSMovementAnimSet_CameraFacing_Directional Pivot_HipBackward;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Backward") UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Set | Hip Backward")
FOLSMovementAnimSet StopCycle_HipBackward; FOLSMovementAnimSet_CameraFacing_Directional StopCycle_HipBackward;
}; };
USTRUCT(BlueprintType) USTRUCT(BlueprintType)

View File

@ -1,6 +1,6 @@
{ {
"FileVersion": 3, "FileVersion": 3,
"EngineAssociation": "5.6", "EngineAssociation": "5.5",
"Category": "", "Category": "",
"Description": "", "Description": "",
"Modules": [ "Modules": [