#pragma once

/*
* SDK generated by Dumper-7
*
* https://github.com/Encryqed/Dumper-7
*/

// Package: GSEngineExtent

#include "Basic.hpp"

#include "AnimGraphRuntime_structs.hpp"
#include "CoreUObject_structs.hpp"
#include "Engine_structs.hpp"


namespace SDK
{

// Enum GSEngineExtent.EIKFootRootLocalAxis
// NumValues: 0x0005
enum class EIKFootRootLocalAxis : uint8
{
	NONE                                     = 0,
	X                                        = 1,
	Y                                        = 2,
	Z                                        = 3,
	EIKFootRootLocalAxis_MAX                 = 4,
};

// Enum GSEngineExtent.EDummySocket
// NumValues: 0x0009
enum class EDummySocket : uint8
{
	Pt01_Socket                              = 0,
	Pt02_Socket                              = 1,
	Pt03_Socket                              = 2,
	Pt04_Socket                              = 3,
	Pt05_Socket                              = 4,
	Pt06_Socket                              = 5,
	Pt07_Socket                              = 6,
	Pt08_Socket                              = 7,
	EDummySocket_MAX                         = 8,
};

// Enum GSEngineExtent.EGSConstraintAspectRatioType
// NumValues: 0x0004
enum class EGSConstraintAspectRatioType : uint8
{
	None                                     = 0,
	UpDown                                   = 1,
	LeftRight                                = 2,
	EGSConstraintAspectRatioType_MAX         = 3,
};

// Enum GSEngineExtent.EGSForceRatioType
// NumValues: 0x0004
enum class EGSForceRatioType : uint8
{
	Auto                                     = 0,
	Force16_9                                = 1,
	Force21_9                                = 2,
	EGSForceRatioType_MAX                    = 3,
};

// ScriptStruct GSEngineExtent.GSBranchFilter
// 0x000C (0x000C - 0x0000)
struct FGSBranchFilter final
{
public:
	class FName                                   BoneName;                                          // 0x0000(0x0008)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	int32                                         BlendDepth;                                        // 0x0008(0x0004)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FGSBranchFilter;

// ScriptStruct GSEngineExtent.GSInputBlendPose
// 0x0010 (0x0010 - 0x0000)
struct FGSInputBlendPose final
{
public:
	TArray<struct FGSBranchFilter>                BranchFilters;                                     // 0x0000(0x0010)(Edit, BlueprintVisible, ZeroConstructor, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FGSInputBlendPose;

// ScriptStruct GSEngineExtent.AnimNode_GSLayeredBoneBlend
// 0x0018 (0x00F8 - 0x00E0)
struct FAnimNode_GSLayeredBoneBlend final : public FAnimNode_LayeredBoneBlend
{
public:
	TArray<struct FGSInputBlendPose>              GS_LayerSetup;                                     // 0x00E0(0x0010)(Edit, EditFixedSize, ZeroConstructor, NativeAccessSpecifierPublic)
	bool                                          GS_bMeshSpaceRotationBlend;                        // 0x00F0(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_F1[0x7];                                       // 0x00F1(0x0007)(Fixing Struct Size After Last Property [ Dumper-7 ])
};
DUMPER7_ASSERTS_FAnimNode_GSLayeredBoneBlend;

// ScriptStruct GSEngineExtent.AxisSettings
// 0x0008 (0x0008 - 0x0000)
struct FAxisSettings final
{
public:
	EAxis                                         YawRotationAxis;                                   // 0x0000(0x0001)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_1[0x3];                                        // 0x0001(0x0003)(Fixing Size After Last Property [ Dumper-7 ])
	float                                         BodyOrientationAlpha;                              // 0x0004(0x0004)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FAxisSettings;

// ScriptStruct GSEngineExtent.BoneRef
// 0x0010 (0x0010 - 0x0000)
struct FBoneRef final
{
public:
	struct FBoneReference                         bone;                                              // 0x0000(0x0010)(Edit, NoDestructor, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FBoneRef;

// ScriptStruct GSEngineExtent.AnimMode_GSOrientationWarping
// 0x0058 (0x0068 - 0x0010)
struct FAnimMode_GSOrientationWarping final : public FAnimNode_Base
{
public:
	struct FPoseLink                              BasePose;                                          // 0x0010(0x0010)(Edit, BlueprintVisible, NoDestructor, NativeAccessSpecifierPublic)
	float                                         LocomotionAngle;                                   // 0x0020(0x0004)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	struct FAxisSettings                          Settings;                                          // 0x0024(0x0008)(Edit, BlueprintVisible, NoDestructor, NativeAccessSpecifierPublic)
	uint8                                         Pad_2C[0x4];                                       // 0x002C(0x0004)(Fixing Size After Last Property [ Dumper-7 ])
	TArray<struct FBoneRef>                       SpineBones;                                        // 0x0030(0x0010)(Edit, ZeroConstructor, NativeAccessSpecifierPublic)
	struct FBoneReference                         IKFootRootBone;                                    // 0x0040(0x0010)(Edit, NoDestructor, NativeAccessSpecifierPublic)
	struct FBoneReference                         PelvisBone;                                        // 0x0050(0x0010)(Edit, NoDestructor, NativeAccessSpecifierPublic)
	float                                         InternalLocomotionAngle;                           // 0x0060(0x0004)(ZeroConstructor, Transient, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	uint8                                         Pad_64[0x4];                                       // 0x0064(0x0004)(Fixing Struct Size After Last Property [ Dumper-7 ])
};
DUMPER7_ASSERTS_FAnimMode_GSOrientationWarping;

// ScriptStruct GSEngineExtent.IKBones
// 0x0024 (0x0024 - 0x0000)
struct FIKBones final
{
public:
	struct FBoneReference                         IKFootBone;                                        // 0x0000(0x0010)(Edit, NoDestructor, NativeAccessSpecifierPublic)
	struct FBoneReference                         FKFootBone;                                        // 0x0010(0x0010)(Edit, NoDestructor, NativeAccessSpecifierPublic)
	int32                                         NumBonesInLimb;                                    // 0x0020(0x0004)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FIKBones;

// ScriptStruct GSEngineExtent.IKFootLocation
// 0x0060 (0x0060 - 0x0000)
struct FIKFootLocation final
{
public:
	struct FVector                                LimbRootLocation;                                  // 0x0000(0x0018)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	struct FVector                                OriginLocation;                                    // 0x0018(0x0018)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	struct FVector                                ActualLocation;                                    // 0x0030(0x0018)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	struct FVector                                NewLocation;                                       // 0x0048(0x0018)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FIKFootLocation;

// ScriptStruct GSEngineExtent.PelvisAdjustmentInterp
// 0x0008 (0x0008 - 0x0000)
struct FPelvisAdjustmentInterp final
{
public:
	float                                         Stiffness;                                         // 0x0000(0x0004)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	float                                         Dampen;                                            // 0x0004(0x0004)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FPelvisAdjustmentInterp;

// ScriptStruct GSEngineExtent.AnimNode_SpeedWarping
// 0x00B8 (0x0180 - 0x00C8)
struct FAnimNode_SpeedWarping final : public FAnimNode_SkeletalControlBase
{
public:
	struct FBoneReference                         IKFootRootBone;                                    // 0x00C8(0x0010)(Edit, NoDestructor, NativeAccessSpecifierPublic)
	TArray<struct FIKBones>                       FeetDefinitions;                                   // 0x00D8(0x0010)(Edit, BlueprintVisible, ZeroConstructor, NativeAccessSpecifierPublic)
	struct FBoneReference                         PelvisBone;                                        // 0x00E8(0x0010)(Edit, NoDestructor, NativeAccessSpecifierPublic)
	EIKFootRootLocalAxis                          SpeedWarpingAxisMode;                              // 0x00F8(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_F9[0x3];                                       // 0x00F9(0x0003)(Fixing Size After Last Property [ Dumper-7 ])
	float                                         SpeedScaling;                                      // 0x00FC(0x0004)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	float                                         PelvisAdjustmentAlpha;                             // 0x0100(0x0004)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	float                                         MaxIter;                                           // 0x0104(0x0004)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	struct FPelvisAdjustmentInterp                PelvisAdjustmentInterp;                            // 0x0108(0x0008)(Edit, BlueprintVisible, NoDestructor, NativeAccessSpecifierPublic)
	bool                                          ClampIKUsingFKLeg;                                 // 0x0110(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_111[0x6F];                                     // 0x0111(0x006F)(Fixing Struct Size After Last Property [ Dumper-7 ])
};
DUMPER7_ASSERTS_FAnimNode_SpeedWarping;

// ScriptStruct GSEngineExtent.AnimNotify_DummyEfx
// 0x0058 (0x0058 - 0x0000)
struct FAnimNotify_DummyEfx final
{
public:
	class UParticleSystem*                        PSTemplate;                                        // 0x0000(0x0008)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	EDummySocket                                  Socket;                                            // 0x0008(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_9[0x7];                                        // 0x0009(0x0007)(Fixing Size After Last Property [ Dumper-7 ])
	struct FVector                                LocationOffset;                                    // 0x0010(0x0018)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	struct FRotator                               RotationOffset;                                    // 0x0028(0x0018)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, NativeAccessSpecifierPublic)
	struct FVector                                Scale;                                             // 0x0040(0x0018)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FAnimNotify_DummyEfx;

// ScriptStruct GSEngineExtent.PMLocationBoneSocketBoneInfo
// 0x0008 (0x0008 - 0x0000)
struct FPMLocationBoneSocketBoneInfo final
{
public:
	class FName                                   BoneName;                                          // 0x0000(0x0008)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FPMLocationBoneSocketBoneInfo;

// ScriptStruct GSEngineExtent.PMLocationSkelVertSurfaceBoneInfo
// 0x0008 (0x0008 - 0x0000)
struct FPMLocationSkelVertSurfaceBoneInfo final
{
public:
	class FName                                   BoneName;                                          // 0x0000(0x0008)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FPMLocationSkelVertSurfaceBoneInfo;

}

