#pragma once #include #include "!GlobalTypes.hpp" /////////////////////////////////////////// // Binary: animationsystem.dll // Class Count: 192 // Enum Count: 47 /////////////////////////////////////////// // Aligment: 4 // Size: 6 enum class AnimationProcessingType_t : uint32_t { ANIMATION_PROCESSING_SERVER_SIMULATION = 0x0, ANIMATION_PROCESSING_CLIENT_SIMULATION = 0x1, ANIMATION_PROCESSING_CLIENT_PREDICTION = 0x2, ANIMATION_PROCESSING_CLIENT_INTERPOLATION = 0x3, ANIMATION_PROCESSING_CLIENT_RENDER = 0x4, ANIMATION_PROCESSING_MAX = 0x5, }; // Aligment: 4 // Size: 7 enum class AnimationSnapshotType_t : uint32_t { ANIMATION_SNAPSHOT_SERVER_SIMULATION = 0x0, ANIMATION_SNAPSHOT_CLIENT_SIMULATION = 0x1, ANIMATION_SNAPSHOT_CLIENT_PREDICTION = 0x2, ANIMATION_SNAPSHOT_CLIENT_INTERPOLATION = 0x3, ANIMATION_SNAPSHOT_CLIENT_RENDER = 0x4, ANIMATION_SNAPSHOT_FINAL_COMPOSITE = 0x5, ANIMATION_SNAPSHOT_MAX = 0x6, }; // Aligment: 4 // Size: 17 enum class SeqCmd_t : uint32_t { SeqCmd_Nop = 0x0, SeqCmd_LinearDelta = 0x1, SeqCmd_FetchFrameRange = 0x2, SeqCmd_Slerp = 0x3, SeqCmd_Add = 0x4, SeqCmd_Subtract = 0x5, SeqCmd_Scale = 0x6, SeqCmd_Copy = 0x7, SeqCmd_Blend = 0x8, SeqCmd_Worldspace = 0x9, SeqCmd_Sequence = 0xa, SeqCmd_FetchCycle = 0xb, SeqCmd_FetchFrame = 0xc, SeqCmd_IKLockInPlace = 0xd, SeqCmd_IKRestoreAll = 0xe, SeqCmd_ReverseSequence = 0xf, SeqCmd_Transform = 0x10, }; // Aligment: 4 // Size: 4 enum class SeqPoseSetting_t : uint32_t { SEQ_POSE_SETTING_CONSTANT = 0x0, SEQ_POSE_SETTING_ROTATION = 0x1, SEQ_POSE_SETTING_POSITION = 0x2, SEQ_POSE_SETTING_VELOCITY = 0x3, }; // Aligment: 1 // Size: 69 enum class fieldtype_t : uint8_t { FIELD_VOID = 0, FIELD_FLOAT32 = 1, FIELD_STRING = 2, FIELD_VECTOR = 3, FIELD_QUATERNION = 4, FIELD_INT32 = 5, FIELD_BOOLEAN = 6, FIELD_INT16 = 7, FIELD_CHARACTER = 8, FIELD_COLOR32 = 9, FIELD_EMBEDDED = 10, FIELD_CUSTOM = 11, FIELD_CLASSPTR = 12, FIELD_EHANDLE = 13, FIELD_POSITION_VECTOR = 14, FIELD_TIME = 15, FIELD_TICK = 16, FIELD_SOUNDNAME = 17, FIELD_INPUT = 18, FIELD_FUNCTION = 19, FIELD_VMATRIX = 20, FIELD_VMATRIX_WORLDSPACE = 21, FIELD_MATRIX3X4_WORLDSPACE = 22, FIELD_INTERVAL = 23, FIELD_UNUSED = 24, FIELD_VECTOR2D = 25, FIELD_INT64 = 26, FIELD_VECTOR4D = 27, FIELD_RESOURCE = 28, FIELD_TYPEUNKNOWN = 29, FIELD_CSTRING = 30, FIELD_HSCRIPT = 31, FIELD_VARIANT = 32, FIELD_UINT64 = 33, FIELD_FLOAT64 = 34, FIELD_POSITIVEINTEGER_OR_NULL = 35, FIELD_HSCRIPT_NEW_INSTANCE = 36, FIELD_UINT32 = 37, FIELD_UTLSTRINGTOKEN = 38, FIELD_QANGLE = 39, FIELD_NETWORK_ORIGIN_CELL_QUANTIZED_VECTOR = 40, FIELD_HMATERIAL = 41, FIELD_HMODEL = 42, FIELD_HANIMATIONGRAPH = 43, FIELD_NETWORK_QUANTIZED_VECTOR = 44, FIELD_NETWORK_QUANTIZED_FLOAT = 45, FIELD_DIRECTION_VECTOR_WORLDSPACE = 46, FIELD_QANGLE_WORLDSPACE = 47, FIELD_QUATERNION_WORLDSPACE = 48, FIELD_HSCRIPT_LIGHTBINDING = 49, FIELD_V8_VALUE = 50, FIELD_V8_OBJECT = 51, FIELD_V8_ARRAY = 52, FIELD_V8_CALLBACK_INFO = 53, FIELD_UTLSTRING = 54, FIELD_NETWORK_ORIGIN_CELL_QUANTIZED_POSITION_VECTOR = 55, FIELD_HRENDERTEXTURE = 56, FIELD_HPARTICLESYSTEMDEFINITION = 57, FIELD_UINT8 = 58, FIELD_UINT16 = 59, FIELD_CTRANSFORM = 60, FIELD_CTRANSFORM_WORLDSPACE = 61, FIELD_HPOSTPROCESSING = 62, FIELD_MATRIX3X4 = 63, FIELD_SHIM = 64, FIELD_CMOTIONTRANSFORM = 65, FIELD_CMOTIONTRANSFORM_WORLDSPACE = 66, FIELD_ATTACHMENT_HANDLE = 67, FIELD_TYPECOUNT = 68, }; // Aligment: 4 // Size: 5 enum class CAnimationGraphVisualizerPrimitiveType : uint32_t { ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Text = 0x0, ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Sphere = 0x1, ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Line = 0x2, ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Pie = 0x3, ANIMATIONGRAPHVISUALIZERPRIMITIVETYPE_Axis = 0x4, }; // Aligment: 4 // Size: 13 enum class AnimParamButton_t : uint32_t { ANIMPARAM_BUTTON_NONE = 0x0, ANIMPARAM_BUTTON_DPAD_UP = 0x1, ANIMPARAM_BUTTON_DPAD_RIGHT = 0x2, ANIMPARAM_BUTTON_DPAD_DOWN = 0x3, ANIMPARAM_BUTTON_DPAD_LEFT = 0x4, ANIMPARAM_BUTTON_A = 0x5, ANIMPARAM_BUTTON_B = 0x6, ANIMPARAM_BUTTON_X = 0x7, ANIMPARAM_BUTTON_Y = 0x8, ANIMPARAM_BUTTON_LEFT_SHOULDER = 0x9, ANIMPARAM_BUTTON_RIGHT_SHOULDER = 0xa, ANIMPARAM_BUTTON_LTRIGGER = 0xb, ANIMPARAM_BUTTON_RTRIGGER = 0xc, }; // Aligment: 4 // Size: 4 enum class BoneTransformSpace_t : uint32_t { BoneTransformSpace_Invalid = 0xffffffffffffffff, BoneTransformSpace_Parent = 0x0, BoneTransformSpace_Model = 0x1, BoneTransformSpace_World = 0x2, }; // Aligment: 4 // Size: 3 enum class AnimNodeNetworkMode : uint32_t { ServerAuthoritative = 0x0, ClientSimulate = 0x1, ClientPredicted = 0x2, }; // Aligment: 4 // Size: 2 enum class SolveIKChainAnimNodeSettingSource : uint32_t { SOLVEIKCHAINANIMNODESETTINGSOURCE_Default = 0x0, SOLVEIKCHAINANIMNODESETTINGSOURCE_Override = 0x1, }; // Aligment: 4 // Size: 3 enum class FootstepLandedFootSoundType_t : uint32_t { FOOTSOUND_Left = 0x0, FOOTSOUND_Right = 0x1, FOOTSOUND_UseOverrideSound = 0x2, }; // Aligment: 4 // Size: 3 enum class AnimPoseControl : uint32_t { NoPoseControl = 0x0, AbsolutePoseControl = 0x1, RelativePoseControl = 0x2, }; // Aligment: 4 // Size: 3 enum class FacingMode : uint32_t { FacingMode_Manual = 0x0, FacingMode_Path = 0x1, FacingMode_LookTarget = 0x2, }; // Aligment: 4 // Size: 2 enum class AnimVRHandMotionRange_t : uint32_t { MotionRange_WithController = 0x0, MotionRange_WithoutController = 0x1, }; // Aligment: 4 // Size: 4 enum class AnimVrFingerSplay_t : uint32_t { AnimVrFingerSplay_Thumb_Index = 0x0, AnimVrFingerSplay_Index_Middle = 0x1, AnimVrFingerSplay_Middle_Ring = 0x2, AnimVrFingerSplay_Ring_Pinky = 0x3, }; // Aligment: 4 // Size: 2 enum class AnimVrBoneTransformSource_t : uint32_t { AnimVrBoneTransformSource_LiveStream = 0x0, AnimVrBoneTransformSource_GripLimit = 0x1, }; // Aligment: 4 // Size: 6 enum class IKSolverType : uint32_t { IKSOLVER_Perlin = 0x0, IKSOLVER_TwoBone = 0x1, IKSOLVER_Fabrik = 0x2, IKSOLVER_DogLeg3Bone = 0x3, IKSOLVER_CCD = 0x4, IKSOLVER_COUNT = 0x5, }; // Aligment: 4 // Size: 3 enum class IKTargetSource : uint32_t { IKTARGETSOURCE_Bone = 0x0, IKTARGETSOURCE_AnimgraphParameter = 0x1, IKTARGETSOURCE_COUNT = 0x2, }; // Aligment: 4 // Size: 3 enum class IKTargetCoordinateSystem : uint32_t { IKTARGETCOORDINATESYSTEM_WorldSpace = 0x0, IKTARGETCOORDINATESYSTEM_ModelSpace = 0x1, IKTARGETCOORDINATESYSTEM_COUNT = 0x2, }; // Aligment: 4 // Size: 36 enum class AnimValueSource : uint32_t { MoveHeading = 0x0, MoveSpeed = 0x1, ForwardSpeed = 0x2, StrafeSpeed = 0x3, FacingHeading = 0x4, ManualFacingHeading = 0x5, LookHeading = 0x6, LookPitch = 0x7, Parameter = 0x8, WayPointHeading = 0x9, WayPointDistance = 0xa, BoundaryRadius = 0xb, TargetMoveHeading = 0xc, TargetMoveSpeed = 0xd, AccelerationHeading = 0xe, AccelerationSpeed = 0xf, SlopeHeading = 0x10, SlopeAngle = 0x11, SlopePitch = 0x12, SlopeYaw = 0x13, GoalDistance = 0x14, AccelerationLeftRight = 0x15, AccelerationFrontBack = 0x16, RootMotionSpeed = 0x17, RootMotionTurnSpeed = 0x18, MoveHeadingRelativeToLookHeading = 0x19, MaxMoveSpeed = 0x1a, FingerCurl_Thumb = 0x1b, FingerCurl_Index = 0x1c, FingerCurl_Middle = 0x1d, FingerCurl_Ring = 0x1e, FingerCurl_Pinky = 0x1f, FingerSplay_Thumb_Index = 0x20, FingerSplay_Index_Middle = 0x21, FingerSplay_Middle_Ring = 0x22, FingerSplay_Ring_Pinky = 0x23, }; // Aligment: 4 // Size: 13 enum class AnimVectorSource : uint32_t { MoveDirection = 0x0, FacingDirection = 0x1, LookDirection = 0x2, VectorParameter = 0x3, WayPointDirection = 0x4, Acceleration = 0x5, SlopeNormal = 0x6, SlopeNormal_WorldSpace = 0x7, LookTarget = 0x8, LookTarget_WorldSpace = 0x9, WayPointPosition = 0xa, GoalPosition = 0xb, RootMotionVelocity = 0xc, }; // Aligment: 4 // Size: 3 enum class DampingSpeedFunction : uint32_t { NoDamping = 0x0, Constant = 0x1, Spring = 0x2, }; // Aligment: 4 // Size: 40 enum class ControlValue : uint32_t { ControlValue_MoveHeading = 0x0, ControlValue_MoveSpeed = 0x1, ControlValue_FacingHeading = 0x2, ControlValue_LookHeading = 0x3, ControlValue_LookPitch = 0x4, ControlValue_WayPointHeading = 0x5, ControlValue_WayPointDistance = 0x6, ControlValue_BoundaryRadius = 0x7, ControlValue_TotalTranslation_SourceState = 0x8, ControlValue_TotalTranslation_TargetState = 0x9, ControlValue_RemainingTranslation_SourceState = 0xa, ControlValue_RemainingTranslation_TargetState = 0xb, ControlValue_MoveVsFacingDelta = 0xc, ControlValue_SourceStateBlendWeight = 0xd, ControlValue_TargetStateBlendWeight = 0xe, ControlValue_TargetMoveHeading = 0xf, ControlValue_TargetMoveSpeed = 0x10, ControlValue_AccelerationHeading = 0x11, ControlValue_AccelerationSpeed = 0x12, ControlValue_SlopeHeading = 0x13, ControlValue_SlopeAngle = 0x14, ControlValue_SlopeYaw = 0x15, ControlValue_SlopePitch = 0x16, ControlValue_GoalDistance = 0x17, ControlValue_AccelerationLeftRight = 0x18, ControlValue_AccelerationFrontBack = 0x19, ControlValue_RootMotionSpeed = 0x1a, ControlValue_RootMotionTurnSpeed = 0x1b, ControlValue_MoveHeadingRelativeToLookHeading = 0x1c, ControlValue_FingerCurl_Thumb = 0x1d, ControlValue_FingerCurl_Index = 0x1e, ControlValue_FingerCurl_Middle = 0x1f, ControlValue_FingerCurl_Ring = 0x20, ControlValue_FingerCurl_Pinky = 0x21, ControlValue_FingerSplay_Thumb_Index = 0x22, ControlValue_FingerSplay_Index_Middle = 0x23, ControlValue_FingerSplay_Middle_Ring = 0x24, ControlValue_FingerSplay_Ring_Pinky = 0x25, ControlValue_Count = 0x26, ControlValue_Invalid = 0xff, }; // Aligment: 4 // Size: 2 enum class AimMatrixBlendMode : uint32_t { AimMatrixBlendMode_Additive = 0x0, AimMatrixBlendMode_BoneMask = 0x1, }; // Aligment: 4 // Size: 24 enum class CGroundIKSolveAnimNode::DebugSkeletonBoneType_t : uint32_t { CGroundIKSolveAnimNode::FLAG_NO_BONE_FLAGS = 0x0, CGroundIKSolveAnimNode::FLAG_BONEFLEXDRIVER = 0x4, CGroundIKSolveAnimNode::FLAG_CLOTH = 0x8, CGroundIKSolveAnimNode::FLAG_PHYSICS = 0x10, CGroundIKSolveAnimNode::FLAG_ATTACHMENT = 0x20, CGroundIKSolveAnimNode::FLAG_ANIMATION = 0x40, CGroundIKSolveAnimNode::FLAG_MESH = 0x80, CGroundIKSolveAnimNode::FLAG_HITBOX = 0x100, CGroundIKSolveAnimNode::FLAG_RETARGET_SRC = 0x200, CGroundIKSolveAnimNode::FLAG_BONE_USED_BY_VERTEX_LOD0 = 0x400, CGroundIKSolveAnimNode::FLAG_BONE_USED_BY_VERTEX_LOD1 = 0x800, CGroundIKSolveAnimNode::FLAG_BONE_USED_BY_VERTEX_LOD2 = 0x1000, CGroundIKSolveAnimNode::FLAG_BONE_USED_BY_VERTEX_LOD3 = 0x2000, CGroundIKSolveAnimNode::FLAG_BONE_USED_BY_VERTEX_LOD4 = 0x4000, CGroundIKSolveAnimNode::FLAG_BONE_USED_BY_VERTEX_LOD5 = 0x8000, CGroundIKSolveAnimNode::FLAG_BONE_USED_BY_VERTEX_LOD6 = 0x10000, CGroundIKSolveAnimNode::FLAG_BONE_USED_BY_VERTEX_LOD7 = 0x20000, CGroundIKSolveAnimNode::FLAG_BONE_MERGE_READ = 0x40000, CGroundIKSolveAnimNode::FLAG_BONE_MERGE_WRITE = 0x80000, CGroundIKSolveAnimNode::BLEND_PREALIGNED = 0x100000, CGroundIKSolveAnimNode::FLAG_RIGIDLENGTH = 0x200000, CGroundIKSolveAnimNode::FLAG_PROCEDURAL = 0x400000, CGroundIKSolveAnimNode::FLAG_IK = 0x800000, CGroundIKSolveAnimNode::FLAG_ALL_BONE_FLAGS = 0xffffff, }; // Aligment: 4 // Size: 2 enum class SelectionSource_t : uint32_t { SelectionSource_Bool = 0x0, SelectionSource_Enum = 0x1, }; // Aligment: 4 // Size: 2 enum class MotionSamplingMethod : uint32_t { Uniform = 0x0, AtFootCycleStart = 0x1, }; // Aligment: 4 // Size: 8 enum class FootFallTagFoot_t : uint32_t { FOOT1 = 0x0, FOOT2 = 0x1, FOOT3 = 0x2, FOOT4 = 0x3, FOOT5 = 0x4, FOOT6 = 0x5, FOOT7 = 0x6, FOOT8 = 0x7, }; // Aligment: 4 // Size: 4 enum class BlendKeyType : uint32_t { BlendKey_UserValue = 0x0, BlendKey_Velocity = 0x1, BlendKey_Distance = 0x2, BlendKey_RemainingDistance = 0x3, }; // Aligment: 4 // Size: 4 enum class ResetCycleOption : uint32_t { Beginning = 0x0, SameCycleAsSource = 0x1, InverseSourceCycle = 0x2, FixedValue = 0x3, }; // Aligment: 4 // Size: 4 enum class ChoiceMethod : uint32_t { WeightedRandom = 0x0, WeightedRandomNoRepeat = 0x1, Iterate = 0x2, IterateRandom = 0x3, }; // Aligment: 4 // Size: 3 enum class ChoiceChangeMethod : uint32_t { OnReset = 0x0, OnCycleEnd = 0x1, OnResetOrCycleEnd = 0x2, }; // Aligment: 4 // Size: 2 enum class ChoiceBlendMethod : uint32_t { SingleBlendTime = 0x0, PerChoiceBlendTimes = 0x1, }; // Aligment: 4 // Size: 2 enum class IkEndEffectorType : uint32_t { IkEndEffector_Attachment = 0x0, IkEndEffector_Bone = 0x1, }; // Aligment: 4 // Size: 4 enum class IkTargetType : uint32_t { IkTarget_Attachment = 0x0, IkTarget_Bone = 0x1, IkTarget_Parameter_ModelSpace = 0x2, IkTarget_Parameter_WorldSpace = 0x3, }; // Aligment: 4 // Size: 3 enum class GroundIKTiltSource_t : uint32_t { TILT_None = 0x0, TILT_IK = 0x1, TILT_MovementManagerSlope = 0x2, }; // Aligment: 4 // Size: 3 enum class BinaryNodeTiming : uint32_t { UseChild1 = 0x0, UseChild2 = 0x1, SyncChildren = 0x2, }; // Aligment: 4 // Size: 2 enum class BinaryNodeChildOption : uint32_t { Child1 = 0x0, Child2 = 0x1, }; // Aligment: 4 // Size: 3 enum class SelectorTagBehavior_t : uint32_t { SelectorTagBehavior_OnWhileCurrent = 0x0, SelectorTagBehavior_OffWhenFinished = 0x1, SelectorTagBehavior_OffBeforeFinished = 0x2, }; // Aligment: 4 // Size: 2 enum class Blend2DMode : uint32_t { Blend2DMode_General = 0x0, Blend2DMode_Directional = 0x1, }; // Aligment: 4 // Size: 2 enum class FootLockSubVisualization : uint32_t { FOOTLOCKSUBVISUALIZATION_ReachabilityAnalysis = 0x0, FOOTLOCKSUBVISUALIZATION_IKSolve = 0x1, }; // Aligment: 4 // Size: 2 enum class StepPhase : uint32_t { StepPhase_OnGround = 0x0, StepPhase_InAir = 0x1, }; // Aligment: 4 // Size: 2 enum class FinishedConditionOption : uint32_t { FinishedConditionOption_OnFinished = 0x0, FinishedConditionOption_OnAlmostFinished = 0x1, }; // Aligment: 4 // Size: 3 enum class PathStatusOptions : uint32_t { PathStatus_HasPath = 0x0, PathStatus_WaypointIsGoal = 0x1, PathStatus_GoalHasChanged = 0x2, }; // Aligment: 4 // Size: 4 enum class BoneMaskBlendSpace : uint32_t { BlendSpace_Parent = 0x0, BlendSpace_Model = 0x1, BlendSpace_Model_RotationOnly = 0x2, BlendSpace_Model_TranslationOnly = 0x3, }; // Aligment: 4 // Size: 7 enum class SolveIKChainAnimNodeDebugSetting : uint32_t { SOLVEIKCHAINANIMNODEDEBUGSETTING_None = 0x0, SOLVEIKCHAINANIMNODEDEBUGSETTING_X_Axis_Circle = 0x1, SOLVEIKCHAINANIMNODEDEBUGSETTING_Y_Axis_Circle = 0x2, SOLVEIKCHAINANIMNODEDEBUGSETTING_Z_Axis_Circle = 0x3, SOLVEIKCHAINANIMNODEDEBUGSETTING_Forward = 0x4, SOLVEIKCHAINANIMNODEDEBUGSETTING_Up = 0x5, SOLVEIKCHAINANIMNODEDEBUGSETTING_Left = 0x6, }; // Aligment: 4 // Size: 3 enum class JiggleBoneSimSpace : uint32_t { SimSpace_Local = 0x0, SimSpace_Model = 0x1, SimSpace_World = 0x2, }; // Aligment: 6 // Size: 112 struct AnimationDecodeDebugDumpElement_t { public: int32_t m_nEntityIndex; // 0x0 CUtlString m_modelName; // 0x8 CUtlVector< CUtlString > m_poseParams; // 0x10 CUtlVector< CUtlString > m_decodeOps; // 0x28 CUtlVector< CUtlString > m_internalOps; // 0x40 CUtlVector< CUtlString > m_decodedAnims; // 0x58 }; // Aligment: 2 // Size: 32 struct AnimationDecodeDebugDump_t { public: AnimationProcessingType_t m_processingType; // 0x0 CUtlVector< AnimationDecodeDebugDumpElement_t > m_elems; // 0x8 }; // Aligment: 9 // Size: 272 struct AnimationSnapshotBase_t { public: float m_flRealTime; // 0x0 matrix3x4a_t m_rootToWorld; // 0x10 bool m_bBonesInWorldSpace; // 0x40 CUtlVector< uint32 > m_boneSetupMask; // 0x48 CUtlVector< matrix3x4a_t > m_boneTransforms; // 0x60 CUtlVector< float32 > m_flexControllers; // 0x78 AnimationSnapshotType_t m_SnapshotType; // 0x90 bool m_bHasDecodeDump; // 0x94 AnimationDecodeDebugDumpElement_t m_DecodeDump; // 0x98 }; // Aligment: 2 // Size: 288 struct AnimationSnapshot_t : public AnimationSnapshotBase_t { public: int32_t m_nEntIndex; // 0x110 CUtlString m_modelName; // 0x118 }; // Aligment: 5 // Size: 48 class CAnimBoneDifference { public: CBufferString m_name; // 0x0 CBufferString m_parent; // 0x10 Vector m_posError; // 0x20 bool m_bHasRotation; // 0x2c bool m_bHasMovement; // 0x2d }; // Aligment: 1 // Size: 16 class CAnimMorphDifference { public: CBufferString m_name; // 0x0 }; // Aligment: 2 // Size: 24 class CAnimUserDifference { public: CBufferString m_name; // 0x0 int32_t m_nType; // 0x10 }; // Aligment: 7 // Size: 168 class CAnimEncodeDifference { public: CUtlVector< CAnimBoneDifference > m_boneArray; // 0x0 CUtlVector< CAnimMorphDifference > m_morphArray; // 0x18 CUtlVector< CAnimUserDifference > m_userArray; // 0x30 CUtlVector< uint8 > m_bHasRotationBitArray; // 0x48 CUtlVector< uint8 > m_bHasMovementBitArray; // 0x60 CUtlVector< uint8 > m_bHasMorphBitArray; // 0x78 CUtlVector< uint8 > m_bHasUserBitArray; // 0x90 }; // Aligment: 5 // Size: 56 class CAnimAnimEvent { public: int32_t m_nFrame; // 0x0 float m_flCycle; // 0x4 KeyValues3 m_EventData; // 0x8 CBufferString m_sLegacyOptions; // 0x18 CBufferString m_sEventName; // 0x28 }; // Aligment: 7 // Size: 44 class CAnimMovement { public: int32_t endframe; // 0x0 int32_t motionflags; // 0x4 float v0; // 0x8 float v1; // 0xc float angle; // 0x10 Vector vector; // 0x14 Vector position; // 0x20 }; // Aligment: 6 // Size: 20 class CAnimIKRuleStallFrame { public: int16_t chain; // 0x0 int16_t slot; // 0x2 float start; // 0x4 float peak; // 0x8 float tail; // 0xc float end; // 0x10 }; // Aligment: 6 // Size: 48 class CAnimLocalHierarchy { public: CBufferString m_sBone; // 0x0 CBufferString m_sNewParent; // 0x10 int32_t m_nStartFrame; // 0x20 int32_t m_nPeakFrame; // 0x24 int32_t m_nTailFrame; // 0x28 int32_t m_nEndFrame; // 0x2c }; // Aligment: 3 // Size: 24 class CAnimDecoder { public: CBufferString m_szName; // 0x0 int32_t m_nVersion; // 0x10 int32_t m_nType; // 0x14 }; // Aligment: 4 // Size: 40 class CAnimFrameSegment { public: int32_t m_nUniqueFrameIndex; // 0x0 uint32_t m_nLocalElementMasks; // 0x4 int32_t m_nLocalChannel; // 0x8 CUtlBinaryBlock m_container; // 0x10 }; // Aligment: 3 // Size: 32 class CAnimFrameBlockAnim { public: int32_t m_nStartFrame; // 0x0 int32_t m_nEndFrame; // 0x4 CUtlVector< int32 > m_segmentIndexArray; // 0x8 }; // Aligment: 5 // Size: 216 class CAnimEncodedFrames { public: CBufferString m_fileName; // 0x0 int32_t m_nFrames; // 0x10 int32_t m_nFramesPerBlock; // 0x14 CUtlVector< CAnimFrameBlockAnim > m_frameblockArray; // 0x18 CAnimEncodeDifference m_usageDifferences; // 0x30 }; // Aligment: 6 // Size: 6 class CAnimDesc_Flag { public: bool m_bLooping; // 0x0 bool m_bAllZeros; // 0x1 bool m_bHidden; // 0x2 bool m_bDelta; // 0x3 bool m_bLegacyWorldspace; // 0x4 bool m_bModelDoc; // 0x5 }; // Aligment: 2 // Size: 8 class CAnimSequenceParams { public: float m_flFadeInTime; // 0x0 float m_flFadeOutTime; // 0x4 }; // Aligment: 14 // Size: 432 class CAnimDesc { public: CBufferString m_name; // 0x0 CAnimDesc_Flag m_flags; // 0x10 float fps; // 0x18 CAnimEncodedFrames m_Data; // 0x20 CUtlVector< CAnimMovement > m_movementArray; // 0xf8 CUtlVector< CAnimAnimEvent > m_eventArray; // 0x110 CUtlVector< CAnimActivity > m_activityArray; // 0x128 CUtlVector< CAnimLocalHierarchy > m_hierarchyArray; // 0x140 float framestalltime; // 0x158 Vector m_vecRootMin; // 0x15c Vector m_vecRootMax; // 0x168 CUtlVector< Vector > m_vecBoneWorldMin; // 0x178 CUtlVector< Vector > m_vecBoneWorldMax; // 0x190 CAnimSequenceParams m_sequenceParams; // 0x1a8 }; // Aligment: 4 // Size: 32 class CAnimActivity { public: CBufferString m_name; // 0x0 int32_t m_nActivity; // 0x10 int32_t m_nFlags; // 0x14 int32_t m_nWeight; // 0x18 }; // Aligment: 5 // Size: 112 class CAnimData { public: CBufferString m_name; // 0x10 CUtlVector< CAnimDesc > m_animArray; // 0x20 CUtlVector< CAnimDecoder > m_decoderArray; // 0x38 int32_t m_nMaxUniqueFrameIndex; // 0x50 CUtlVector< CAnimFrameSegment > m_segmentArray; // 0x58 }; // Aligment: 6 // Size: 72 class CAnimBone { public: CBufferString m_name; // 0x0 int32_t m_parent; // 0x10 Vector m_pos; // 0x14 Quaternion m_quat; // 0x20 Quaternion m_qAlignment; // 0x30 int32_t m_flags; // 0x40 }; // Aligment: 2 // Size: 24 class CAnimUser { public: CBufferString m_name; // 0x0 int32_t m_nType; // 0x10 }; // Aligment: 9 // Size: 144 class CAnimDataChannelDesc { public: CBufferString m_szChannelClass; // 0x0 CBufferString m_szVariableName; // 0x10 int32_t m_nFlags; // 0x20 int32_t m_nType; // 0x24 CBufferString m_szGrouping; // 0x28 CBufferString m_szDescription; // 0x38 CUtlVector< CBufferString > m_szElementNameArray; // 0x48 CUtlVector< int32 > m_nElementIndexArray; // 0x60 CUtlVector< uint32 > m_nElementMaskArray; // 0x78 }; // Aligment: 6 // Size: 120 class CAnimKeyData { public: CBufferString m_name; // 0x0 CUtlVector< CAnimBone > m_boneArray; // 0x10 CUtlVector< CAnimUser > m_userArray; // 0x28 CUtlVector< CBufferString > m_morphArray; // 0x40 int32_t m_nChannelElements; // 0x58 CUtlVector< CAnimDataChannelDesc > m_dataChannelArray; // 0x60 }; // Aligment: 13 // Size: 168 class CAnimRetargetElementData { public: int32_t m_nElementType; // 0x0 int32_t m_nGroupType; // 0x4 int32_t m_nChainType; // 0x8 int32_t m_nChainIndex; // 0xc int32_t m_nChainInvIndex; // 0x10 int32_t m_nBoneIndex; // 0x14 CBufferString m_boneName; // 0x18 matrix3x4_t m_transform; // 0x28 matrix3x4_t m_invTransform; // 0x58 float m_flDistance; // 0x88 Vector m_vecMin; // 0x8c Vector m_vecMax; // 0x98 float m_flMass; // 0xa4 }; // Aligment: 4 // Size: 48 class CAnimRetargetChainData { public: CBufferString m_sChainName; // 0x0 int32_t m_nGroupType; // 0x10 int32_t m_nChainType; // 0x14 CUtlVector< int32 > m_nElement; // 0x18 }; // Aligment: 5 // Size: 80 class CAnimRetargetData { public: int32_t m_bEnableRetarget; // 0x0 int32_t m_nRetargetStyle; // 0x4 CUtlVector< CAnimRetargetElementData > m_element; // 0x8 CUtlVector< CAnimRetargetChainData > m_chain; // 0x20 CUtlVector< CBufferString > m_replicated; // 0x38 }; // Aligment: 8 // Size: 384 class CAnimationGroup { public: uint32_t m_nFlags; // 0x10 CBufferString m_name; // 0x18 CUtlVector< CStrongHandle< InfoForResourceTypeCAnimData > > m_localHAnimArray_Handle; // 0x60 CUtlVector< CStrongHandle< InfoForResourceTypeCAnimationGroup > > m_includedGroupArray_Handle; // 0x78 CStrongHandle< InfoForResourceTypeCSequenceGroupData > m_directHSeqGroup_Handle; // 0x90 CAnimKeyData m_decodeKey; // 0x98 CAnimRetargetData m_retarget; // 0x110 CUtlVector< CBufferString > m_szScripts; // 0x160 }; // Aligment: 8 // Size: 8 class CSeqAutoLayerFlag { public: bool m_bPost; // 0x0 bool m_bSpline; // 0x1 bool m_bXFade; // 0x2 bool m_bNoBlend; // 0x3 bool m_bLocal; // 0x4 bool m_bPose; // 0x5 bool m_bFetchFrame; // 0x6 bool m_bSubtract; // 0x7 }; // Aligment: 7 // Size: 28 class CSeqAutoLayer { public: int16_t m_nLocalReference; // 0x0 int16_t m_nLocalPose; // 0x2 CSeqAutoLayerFlag m_flags; // 0x4 float m_start; // 0xc float m_peak; // 0x10 float m_tail; // 0x14 float m_end; // 0x18 }; // Aligment: 4 // Size: 12 class CSeqIKLock { public: float m_flPosWeight; // 0x0 float m_flAngleWeight; // 0x4 int16_t m_nLocalBone; // 0x8 bool m_bBonesOrientedAlongPositiveX; // 0xa }; // Aligment: 5 // Size: 96 class CSeqBoneMaskList { public: CBufferString m_sName; // 0x0 CUtlVector< int16 > m_nLocalBoneArray; // 0x10 CUtlVector< float32 > m_flBoneWeightArray; // 0x28 float m_flDefaultMorphCtrlWeight; // 0x40 CUtlVector< CUtlPair< CBufferString, float32 > > m_morphCtrlWeightArray; // 0x48 }; // Aligment: 6 // Size: 6 class CSeqMultiFetchFlag { public: bool m_bRealtime; // 0x0 bool m_bCylepose; // 0x1 bool m_b0D; // 0x2 bool m_b1D; // 0x3 bool m_b2D; // 0x4 bool m_b2D_TRI; // 0x5 }; // Aligment: 8 // Size: 104 class CSeqMultiFetch { public: CSeqMultiFetchFlag m_flags; // 0x0 CUtlVector< int16 > m_localReferenceArray; // 0x8 int32[2] m_nGroupSize; // 0x20 int32[2] m_nLocalPose; // 0x28 CUtlVector< float32 > m_poseKeyArray0; // 0x30 CUtlVector< float32 > m_poseKeyArray1; // 0x48 int32_t m_nLocalCyclePoseParameter; // 0x60 bool m_bCalculatePoseParameters; // 0x64 }; // Aligment: 11 // Size: 11 class CSeqSeqDescFlag { public: bool m_bLooping; // 0x0 bool m_bSnap; // 0x1 bool m_bAutoplay; // 0x2 bool m_bPost; // 0x3 bool m_bHidden; // 0x4 bool m_bMulti; // 0x5 bool m_bLegacyDelta; // 0x6 bool m_bLegacyWorldspace; // 0x7 bool m_bLegacyCyclepose; // 0x8 bool m_bLegacyRealtime; // 0x9 bool m_bModelDoc; // 0xa }; // Aligment: 2 // Size: 8 class CSeqTransition { public: float m_flFadeInTime; // 0x0 float m_flFadeOutTime; // 0x4 }; // Aligment: 11 // Size: 280 class CSeqS1SeqDesc { public: CBufferString m_sName; // 0x0 CSeqSeqDescFlag m_flags; // 0x10 CSeqMultiFetch m_fetch; // 0x20 int32_t m_nLocalWeightlist; // 0x88 CUtlVector< CSeqAutoLayer > m_autoLayerArray; // 0x90 CUtlVector< CSeqIKLock > m_IKLockArray; // 0xa8 CSeqTransition m_transition; // 0xc0 KeyValues3 m_SequenceKeys; // 0xc8 CBufferString m_LegacyKeyValueText; // 0xd8 CUtlVector< CAnimActivity > m_activityArray; // 0xe8 CUtlVector< CFootMotion > m_footMotion; // 0x100 }; // Aligment: 6 // Size: 64 class CSeqSynthAnimDesc { public: CBufferString m_sName; // 0x0 CSeqSeqDescFlag m_flags; // 0x10 CSeqTransition m_transition; // 0x1c int16_t m_nLocalBaseReference; // 0x24 int16_t m_nLocalBoneMask; // 0x26 CUtlVector< CAnimActivity > m_activityArray; // 0x28 }; // Aligment: 9 // Size: 24 class CSeqCmdLayer { public: int16_t m_cmd; // 0x0 int16_t m_nLocalReference; // 0x2 int16_t m_nLocalBonemask; // 0x4 int16_t m_nDstResult; // 0x6 int16_t m_nSrcResult; // 0x8 bool m_bSpline; // 0xa float m_flVar1; // 0xc float m_flVar2; // 0x10 int16_t m_nLineNumber; // 0x14 }; // Aligment: 8 // Size: 64 class CSeqPoseSetting { public: CBufferString m_sPoseParameter; // 0x0 CBufferString m_sAttachment; // 0x10 CBufferString m_sReferenceSequence; // 0x20 float m_flValue; // 0x30 bool m_bX; // 0x34 bool m_bY; // 0x35 bool m_bZ; // 0x36 int32_t m_eType; // 0x38 }; // Aligment: 12 // Size: 144 class CSeqCmdSeqDesc { public: CBufferString m_sName; // 0x0 CSeqSeqDescFlag m_flags; // 0x10 CSeqTransition m_transition; // 0x1c int16_t m_nFrameRangeSequence; // 0x24 int16_t m_nFrameCount; // 0x26 float m_flFPS; // 0x28 int16_t m_nSubCycles; // 0x2c int16_t m_numLocalResults; // 0x2e CUtlVector< CSeqCmdLayer > m_cmdLayerArray; // 0x30 CUtlVector< CAnimAnimEvent > m_eventArray; // 0x48 CUtlVector< CAnimActivity > m_activityArray; // 0x60 CUtlVector< CSeqPoseSetting > m_poseSettingArray; // 0x78 }; // Aligment: 5 // Size: 32 class CSeqPoseParamDesc { public: CBufferString m_sName; // 0x0 float m_flStart; // 0x10 float m_flEnd; // 0x14 float m_flLoop; // 0x18 bool m_bLooping; // 0x1c }; // Aligment: 13 // Size: 288 class CSequenceGroupData { public: CBufferString m_sName; // 0x10 uint32_t m_nFlags; // 0x20 CUtlVector< CBufferString > m_localSequenceNameArray; // 0x28 CUtlVector< CSeqS1SeqDesc > m_localS1SeqDescArray; // 0x40 CUtlVector< CSeqS1SeqDesc > m_localMultiSeqDescArray; // 0x58 CUtlVector< CSeqSynthAnimDesc > m_localSynthAnimDescArray; // 0x70 CUtlVector< CSeqCmdSeqDesc > m_localCmdSeqDescArray; // 0x88 CUtlVector< CSeqBoneMaskList > m_localBoneMaskArray; // 0xa0 CUtlVector< CBufferString > m_localBoneNameArray; // 0xb8 CBufferString m_localNodeName; // 0xd0 CUtlVector< CSeqPoseParamDesc > m_localPoseParamArray; // 0xe0 KeyValues3 m_keyValues; // 0xf8 CUtlVector< CSeqIKLock > m_localIKAutoplayLockArray; // 0x108 }; // Aligment: 17 // Size: 416 class CCompressorGroup { public: int32_t m_nTotalElementCount; // 0x0 CUtlVector< char* > m_szChannelClass; // 0x8 CUtlVector< char* > m_szVariableName; // 0x20 CUtlVector< fieldtype_t > m_nType; // 0x38 CUtlVector< int32 > m_nFlags; // 0x50 CUtlVector< CUtlString > m_szGrouping; // 0x68 CUtlVector< int32 > m_nCompressorIndex; // 0x80 CUtlVector< CUtlVector< char* > > m_szElementNames; // 0x98 CUtlVector< CUtlVector< int32 > > m_nElementUniqueID; // 0xb0 CUtlVector< uint32 > m_nElementMask; // 0xc8 CUtlVector< CCompressor< Vector >* > m_vectorCompressor; // 0xf8 CUtlVector< CCompressor< Quaternion >* > m_quaternionCompressor; // 0x110 CUtlVector< CCompressor< int32 >* > m_intCompressor; // 0x128 CUtlVector< CCompressor< bool >* > m_boolCompressor; // 0x140 CUtlVector< CCompressor< Color >* > m_colorCompressor; // 0x158 CUtlVector< CCompressor< Vector2D >* > m_vector2DCompressor; // 0x170 CUtlVector< CCompressor< Vector4D >* > m_vector4DCompressor; // 0x188 }; // Aligment: 1 // Size: 16 class CAnimationGraphVisualizerPrimitiveBase { public: CAnimationGraphVisualizerPrimitiveType m_Type; // 0x8 }; // Aligment: 3 // Size: 48 class CAnimationGraphVisualizerText : public CAnimationGraphVisualizerPrimitiveBase { public: VectorAligned m_vWsPosition; // 0x10 Color m_Color; // 0x20 CUtlString m_Text; // 0x28 }; // Aligment: 3 // Size: 48 class CAnimationGraphVisualizerSphere : public CAnimationGraphVisualizerPrimitiveBase { public: VectorAligned m_vWsPosition; // 0x10 float m_flRadius; // 0x20 Color m_Color; // 0x24 }; // Aligment: 3 // Size: 64 class CAnimationGraphVisualizerLine : public CAnimationGraphVisualizerPrimitiveBase { public: VectorAligned m_vWsPositionStart; // 0x10 VectorAligned m_vWsPositionEnd; // 0x20 Color m_Color; // 0x30 }; // Aligment: 4 // Size: 80 class CAnimationGraphVisualizerPie : public CAnimationGraphVisualizerPrimitiveBase { public: VectorAligned m_vWsCenter; // 0x10 VectorAligned m_vWsStart; // 0x20 VectorAligned m_vWsEnd; // 0x30 Color m_Color; // 0x40 }; // Aligment: 2 // Size: 64 class CAnimationGraphVisualizerAxis : public CAnimationGraphVisualizerPrimitiveBase { public: CTransform m_xWsTransform; // 0x10 float m_flAxisSize; // 0x30 }; // Aligment: 1 // Size: 4 class AnimNodeID { public: uint32_t m_id; // 0x0 }; // Aligment: 1 // Size: 4 class AnimOutputID { public: uint32_t m_id; // 0x0 }; // Aligment: 1 // Size: 4 class AnimStateID { public: uint32_t m_id; // 0x0 }; // Aligment: 1 // Size: 4 class AnimParamID { public: uint32_t m_id; // 0x0 }; // Aligment: 1 // Size: 4 class AnimTagID { public: uint32_t m_id; // 0x0 }; // Aligment: 2 // Size: 16 class CBlendCurve { public: Vector2D m_vControlPoint1; // 0x0 Vector2D m_vControlPoint2; // 0x8 }; // Aligment: 1 // Size: 16 struct IKBoneNameAndIndex_t { public: // MPropertyAttributeChoiceName "Bone" CUtlString m_Name; // 0x0 }; // Aligment: 2 // Size: 8 struct IKSolverSettings_t { public: // MPropertyFriendlyName "Solver Type" // MPropertyAttributeChoiceEnumName // MPropertyAttrChangeCallback IKSolverType m_SolverType; // 0x0 // MPropertyFriendlyName "Num Iterations " // MPropertyAttrStateCallback int32_t m_nNumIterations; // 0x4 }; // Aligment: 4 // Size: 32 struct IKTargetSettings_t { public: // MPropertyFriendlyName "Target Source" // MPropertyAttributeChoiceEnumName // MPropertyAttrChangeCallback IKTargetSource m_TargetSource; // 0x0 // MPropertyFriendlyName "Bone" // MPropertyAttrStateCallback IKBoneNameAndIndex_t m_Bone; // 0x8 // MPropertyFriendlyName "Animgraph Position Parameter" // MPropertyAttributeChoiceName "VectorParameter" // MPropertyAttrStateCallback AnimParamID m_AnimgraphParameterNamePosition; // 0x18 // MPropertyFriendlyName "Target Coords" // MPropertyAttrStateCallback IKTargetCoordinateSystem m_TargetCoordSystem; // 0x1c }; // Aligment: 2 // Size: 16 class CBoneMergeModel { public: // MPropertyHideField CUtlString m_name; // 0x0 // MPropertyHideField bool m_bEnabled; // 0x8 }; // Aligment: 8 // Size: 144 class CAnimationGraph { public: CSmartPtr< CAnimNodeManager > m_nodeManager; // 0x8 CSmartPtr< CAnimParameterList > m_pParameterList; // 0x10 CSmartPtr< CAnimTagManager > m_pTagManager; // 0x18 CSmartPtr< CAnimMovementManager > m_pMovementManager; // 0x20 CSmartPtr< CAnimGraphSettingsManager > m_pSettingsManager; // 0x28 CSmartPtr< CActivityValueList > m_pActivityValuesList; // 0x40 CUtlVector< CUtlString > m_previewModels; // 0x48 CUtlVector< CBoneMergeModel > m_boneMergeModels; // 0x60 }; // Aligment: 1 // Size: 72 class CAnimationSubGraph { public: CSmartPtr< CAnimNodeManager > m_nodeManager; // 0x8 }; // Aligment: 1 // Size: 48 class CAnimParameterList { public: CUtlVector< CSmartPtr< CAnimParameterBase > > m_Parameters; // 0x18 }; // Aligment: 2 // Size: 56 class CParameterValue { public: AnimParamID m_id; // 0x18 CAnimVariant m_value; // 0x1c }; // Aligment: 2 // Size: 64 class CActivityValues { public: CUtlVector< CSmartPtr< CParameterValue > > m_values; // 0x18 CUtlString m_activityName; // 0x30 }; // Aligment: 1 // Size: 56 class CActivityValueList { public: CUtlVector< CSmartPtr< CActivityValues > > m_activities; // 0x18 }; // Aligment: 1 // Size: 40 class CAnimNodeList { public: CUtlVector< CAnimNodeBase* > m_nodes; // 0x10 }; // Aligment: 0 // Size: 104 class CAnimNodeManager { public: // }; // Aligment: 1 // Size: 40 class CAnimStateList { public: CUtlVector< CAnimState* > m_states; // 0x10 }; // Aligment: 4 // Size: 24 class CAnimInputDamping { public: // MPropertyFriendlyName "Speed Function" DampingSpeedFunction m_speedFunction; // 0x8 // MPropertyFriendlyName "Speed Scale" float m_fSpeedScale; // 0xc // MPropertyFriendlyName "Minimum Speed" float m_fMinSpeed; // 0x10 // MPropertyFriendlyName "Maximum Tension" float m_fMaxTension; // 0x14 }; // Aligment: 1 // Size: 48 class CAnimGraphSettingsManager { public: CUtlVector< CSmartPtr< CAnimGraphSettingsGroup > > m_settingsGroups; // 0x18 }; // Aligment: 0 // Size: 32 class CAnimGraphSettingsGroup { public: // }; // Aligment: 1 // Size: 40 class CAnimGraphGeneralSettings : public CAnimGraphSettingsGroup { public: // MPropertyFriendlyName "Grid Snapping" int32_t m_iGridSnap; // 0x20 }; // Aligment: 2 // Size: 40 class CAnimGraphNetworkSettings : public CAnimGraphSettingsGroup { public: // MPropertyFriendlyName "Enable Networking" bool m_bNetworkingEnabled; // 0x20 // MPropertyFriendlyName "Default Network Mode" AnimNodeNetworkMode m_defaultNetworkMode; // 0x24 }; // Aligment: 4 // Size: 48 class CClipProperties { public: // MPropertyFriendlyName "Name" // MPropertyAttrStateCallback CUtlString m_name; // 0x18 // MPropertyFriendlyName "Frame Count" // MPropertyAttrStateCallback int32_t m_frames; // 0x20 // MPropertyFriendlyName "Frame Rate" // MPropertyAttrStateCallback float m_flFrameRate; // 0x24 // MPropertyFriendlyName "Duration" // MPropertyAttrStateCallback float m_flDuration; // 0x28 }; // Aligment: 1 // Size: 48 class CAnimClipPropertiesManager { public: CUtlVector< CSmartPtr< CClipProperties > > m_Clips; // 0x18 }; // Aligment: 1 // Size: 32 class CAnimMotorList { public: CUtlVector< CSmartPtr< CAnimMotorBase > > m_motors; // 0x8 }; // Aligment: 1 // Size: 16 class CAnimMovementSettings { public: bool m_bShouldCalculateSlope; // 0x8 }; // Aligment: 2 // Size: 40 class CAnimMotorBase { public: // MPropertyFriendlyName "Name" // MPropertySortPriority "100" CUtlString m_name; // 0x18 // MPropertyHideField bool m_bDefault; // 0x20 }; // Aligment: 2 // Size: 72 class CPathAnimMotorBase : public CAnimMotorBase { public: // MPropertyFriendlyName "Facing Damping" // MPropertySortPriority "90" CAnimInputDamping m_facingDamping; // 0x28 // MPropertyFriendlyName "Lock To Path" // MPropertySortPriority "90" bool m_bLockToPath; // 0x40 }; // Aligment: 0 // Size: 72 class CPathAnimMotor : public CPathAnimMotorBase, CAnimMotorBase { public: // }; // Aligment: 6 // Size: 96 class CDampedPathAnimMotor : public CPathAnimMotorBase, CAnimMotorBase { public: // MPropertyFriendlyName "Anticipation Time" float m_flAnticipationTime; // 0x48 // MPropertyFriendlyName "Anticipation Position Parameter" // MPropertyAttributeChoiceName "VectorParameter" AnimParamID m_anticipationPosParam; // 0x4c // MPropertyFriendlyName "Anticipation Heading Parameter" // MPropertyAttributeChoiceName "FloatParameter" AnimParamID m_anticipationHeadingParam; // 0x50 // MPropertyFriendlyName "Spring Constant" // MPropertyGroupName "+Stopping:Arrival Damping" float m_flSpringConstant; // 0x54 // MPropertyFriendlyName "Min Tension" // MPropertyGroupName "+Stopping:Arrival Damping" float m_flMinSpringTension; // 0x58 // MPropertyFriendlyName "Max Tension" // MPropertyGroupName "+Stopping:Arrival Damping" float m_flMaxSpringTension; // 0x5c }; // Aligment: 6 // Size: 88 class CPlayerInputAnimMotor : public CAnimMotorBase { public: // MPropertyFriendlyName "Sample Times" CUtlVector< float32 > m_sampleTimes; // 0x28 // MPropertyFriendlyName "Use Acceleration" // MPropertyAttrChangeCallback bool m_bUseAcceleraion; // 0x40 // MPropertyFriendlyName "Spring Constant" // MPropertyAttrStateCallback float m_flSpringConstant; // 0x44 // MPropertyFriendlyName "Anticipation Distance" float m_flAnticipationDistance; // 0x48 // MPropertyFriendlyName "Anticipation Position Parameter" // MPropertyAttributeChoiceName "VectorParameter" AnimParamID m_anticipationPosParam; // 0x4c // MPropertyFriendlyName "Anticipation Heading Parameter" // MPropertyAttributeChoiceName "FloatParameter" AnimParamID m_anticipationHeadingParam; // 0x50 }; // Aligment: 7 // Size: 48 class CAnimParameterBase { public: // MPropertyFriendlyName "Name" // MPropertySortPriority "100" CUtlString m_name; // 0x18 // MPropertyHideField AnimParamID m_id; // 0x20 // MPropertyFriendlyName "Preview Button" AnimParamButton_t m_previewButton; // 0x24 // MPropertyFriendlyName "Network" bool m_bNetwork; // 0x28 // MPropertyFriendlyName "Force Latest Value" bool m_bUseMostRecentValue; // 0x29 // MPropertyFriendlyName "Auto Reset" bool m_bAutoReset; // 0x2a // MPropertyFriendlyName "Predicted" bool m_bPredicted; // 0x2b }; // Aligment: 1 // Size: 56 class CBoolAnimParameter : public CAnimParameterBase { public: // MPropertyFriendlyName "Default Value" bool m_bDefaultValue; // 0x30 }; // Aligment: 2 // Size: 88 class CEnumAnimParameter : public CAnimParameterBase { public: // MPropertyFriendlyName "Default Value" uint8_t m_defaultValue; // 0x38 // MPropertyFriendlyName "Values" CUtlVector< CUtlString > m_enumOptions; // 0x40 }; // Aligment: 3 // Size: 64 class CIntAnimParameter : public CAnimParameterBase { public: // MPropertyFriendlyName "Default Value" int32_t m_defaultValue; // 0x30 // MPropertyFriendlyName "Min Value" int32_t m_minValue; // 0x34 // MPropertyFriendlyName "Max Value" int32_t m_maxValue; // 0x38 }; // Aligment: 4 // Size: 64 class CFloatAnimParameter : public CAnimParameterBase { public: // MPropertyFriendlyName "Default Value" float m_fDefaultValue; // 0x30 // MPropertyFriendlyName "Min Value" float m_fMinValue; // 0x34 // MPropertyFriendlyName "Max Value" float m_fMaxValue; // 0x38 // MPropertyFriendlyName "Interpolate" bool m_bInterpolate; // 0x3c }; // Aligment: 2 // Size: 64 class CVectorAnimParameter : public CAnimParameterBase { public: // MPropertyFriendlyName "Default Value" Vector m_defaultValue; // 0x30 // MPropertyFriendlyName "Interpolate" bool m_bInterpolate; // 0x3c }; // Aligment: 2 // Size: 72 class CQuaternionAnimParameter : public CAnimParameterBase { public: // MPropertyFriendlyName "Default Value" Quaternion m_defaultValue; // 0x30 // MPropertyFriendlyName "Interpolate" bool m_bInterpolate; // 0x40 }; // Aligment: 2 // Size: 8 class CNodeConnection { public: // MPropertySuppressField AnimNodeID m_nodeID; // 0x0 // MPropertySuppressField AnimOutputID m_outputID; // 0x4 }; // Aligment: 5 // Size: 64 class CAnimNodeBase { public: // MPropertyFriendlyName "Name" // MPropertySortPriority "100" CUtlString m_sName; // 0x20 // MPropertyHideField Vector2D m_vecPosition; // 0x28 // MPropertyHideField AnimNodeID m_nNodeID; // 0x30 // MPropertyFriendlyName "Network Mode" // MPropertyAttrStateCallback AnimNodeNetworkMode m_networkMode; // 0x34 // MPropertyHideField CUtlString m_sNote; // 0x38 }; // Aligment: 4 // Size: 120 class CSequenceAnimNode : public CAnimNodeBase { public: // MPropertySuppressField CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x50 // MPropertyFriendlyName "Sequence" // MPropertyAttributeChoiceName "Sequence" CUtlString m_sequenceName; // 0x68 // MPropertyFriendlyName "Playback Speed" float m_playbackSpeed; // 0x70 // MPropertyFriendlyName "Loop" bool m_bLoop; // 0x74 }; // Aligment: 3 // Size: 24 class CBlendNodeChild { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x0 // MPropertyFriendlyName "Name" CUtlString m_name; // 0x8 // MPropertyFriendlyName "Blend Value" float m_blendValue; // 0x10 }; // Aligment: 9 // Size: 136 class CBlendAnimNode : public CAnimNodeBase { public: // MPropertyFriendlyName "Blend Items" // MPropertyAutoExpandGroup CUtlVector< CBlendNodeChild > m_children; // 0x48 // MPropertyFriendlyName "Blend Source" // MPropertyAttrChangeCallback AnimValueSource m_blendValueSource; // 0x60 // MPropertyFriendlyName "Parameter" // MPropertyAttributeChoiceName "FloatParameter" // MPropertyAttrStateCallback AnimParamID m_param; // 0x64 // MPropertyFriendlyName "Blend Key Values" BlendKeyType m_blendKeyType; // 0x68 // MPropertyFriendlyName "Lock Blend on Reset" bool m_bLockBlendOnReset; // 0x6c // MPropertyFriendlyName "Sync Cycles" bool m_bSyncCycles; // 0x6d // MPropertyFriendlyName "Loop" bool m_bLoop; // 0x6e // MPropertyFriendlyName "Lock Blend When Waning" bool m_bLockWhenWaning; // 0x6f // MPropertyFriendlyName "Damping" CAnimInputDamping m_damping; // 0x70 }; // Aligment: 3 // Size: 112 class CStateMachineAnimNode : public CAnimNodeBase { public: // MPropertySuppressField CUtlVector< CSmartPtr< CAnimState > > m_states; // 0x50 // MPropertyFriendlyName "Block Tags from Waning States" bool m_bBlockWaningTags; // 0x68 // MPropertyFriendlyName "Lock State when Waning" bool m_bLockStateWhenWaning; // 0x69 }; // Aligment: 1 // Size: 72 class CRootAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 }; // Aligment: 4 // Size: 24 class CChoiceNodeChild { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x0 // MPropertyFriendlyName "Name" CUtlString m_name; // 0x8 // MPropertyFriendlyName "Weight" float m_weight; // 0x10 // MPropertyFriendlyName "Blend Time" float m_blendTime; // 0x14 }; // Aligment: 9 // Size: 120 class CChoiceAnimNode : public CAnimNodeBase { public: // MPropertyFriendlyName "Options" // MPropertyAutoExpandGroup CUtlVector< CChoiceNodeChild > m_children; // 0x48 // MPropertyHideField int32_t m_seed; // 0x60 // MPropertyFriendlyName "Method" ChoiceMethod m_choiceMethod; // 0x64 // MPropertyFriendlyName "Change Selection" ChoiceChangeMethod m_choiceChangeMethod; // 0x68 // MPropertyGroupName "Blending" // MPropertyFriendlyName "Blend Method" // MPropertyAttrChangeCallback ChoiceBlendMethod m_blendMethod; // 0x6c // MPropertyGroupName "Blending" // MPropertyFriendlyName "Blend Duration" // MPropertyAttrStateCallback float m_blendTime; // 0x70 // MPropertyGroupName "Blending" // MPropertyFriendlyName "Cross Fade" bool m_bCrossFade; // 0x74 // MPropertyFriendlyName "Reset On Selection" // MPropertyAttrChangeCallback bool m_bResetChosen; // 0x75 // MPropertyFriendlyName "Don't Reset Same Selection" // MPropertyAttrStateCallback bool m_bDontResetSameSelection; // 0x76 }; // Aligment: 3 // Size: 80 class CCycleControlAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Blend Source" AnimValueSource m_valueSource; // 0x48 // MPropertyFriendlyName "Parameter" // MPropertyAttributeChoiceName "FloatParameter" AnimParamID m_param; // 0x4c }; // Aligment: 8 // Size: 96 class CAddAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_baseInput; // 0x40 // MPropertyHideField CNodeConnection m_additiveInput; // 0x48 // MPropertyFriendlyName "Timing Control" // MPropertyAttrChangeCallback BinaryNodeTiming m_timingBehavior; // 0x50 // MPropertyFriendlyName "Timing Blend" // MPropertyAttributeRange "0 1" // MPropertyAttrStateCallback float m_flTimingBlend; // 0x54 // MPropertyFriendlyName "Foot Motion Timing" BinaryNodeChildOption m_footMotionTiming; // 0x58 // MPropertyFriendlyName "Reset Base Child" bool m_bResetBase; // 0x5c // MPropertyFriendlyName "Reset Additive Child" bool m_bResetAdditive; // 0x5d // MPropertyFriendlyName "Treat Translation Separately" bool m_bApplyChannelsSeparately; // 0x5e }; // Aligment: 8 // Size: 96 class CSubtractAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_baseInputConnection; // 0x40 // MPropertyHideField CNodeConnection m_subtractInputConnection; // 0x48 // MPropertyFriendlyName "Timing Control" // MPropertyAttrChangeCallback BinaryNodeTiming m_timingBehavior; // 0x50 // MPropertyFriendlyName "Timing Blend" // MPropertyAttributeRange "0 1" // MPropertyAttrStateCallback float m_flTimingBlend; // 0x54 // MPropertyFriendlyName "Foot Motion Timing" BinaryNodeChildOption m_footMotionTiming; // 0x58 // MPropertyFriendlyName "Reset Base Child" bool m_bResetBase; // 0x5c // MPropertyFriendlyName "Reset Subtracted Child" bool m_bResetSubtract; // 0x5d // MPropertyFriendlyName "Treat Translation Separately" bool m_bApplyChannelsSeparately; // 0x5e }; // Aligment: 8 // Size: 112 class CMoverAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Generate Movement" bool m_bApplyMovement; // 0x48 // MPropertyFriendlyName "Orient Movement" bool m_bOrientMovement; // 0x49 // MPropertyFriendlyName "Additive" bool m_bAdditive; // 0x4a // MPropertyFriendlyName "Turn to Face" bool m_bTurnToFace; // 0x4b // MPropertyFriendlyName "Turn to Face Offset" // MPropertyAttributeRange "-180 180" float m_flTurnToFaceOffset; // 0x4c // MPropertyFriendlyName "Face Direction" AnimValueSource m_facingTarget; // 0x50 // MPropertyFriendlyName "Damping" CAnimInputDamping m_damping; // 0x58 }; // Aligment: 2 // Size: 80 class CSlowDownOnSlopesAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Slow Down Strength" // MPropertyAttributeRange "0.1 2" float m_flSlowDownStrength; // 0x48 }; // Aligment: 7 // Size: 96 class CTurnHelperAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Turn to Face" AnimValueSource m_facingTarget; // 0x48 // MPropertyFriendlyName "Turn Start Time" float m_turnStartTime; // 0x4c // MPropertyFriendlyName "Turn Duration" float m_turnDuration; // 0x50 // MPropertyFriendlyName "Match Child Duration" bool m_bMatchChildDuration; // 0x54 // MPropertyFriendlyName "Use Manual Turn Offset" bool m_bUseManualTurnOffset; // 0x55 // MPropertyFriendlyName "Manual Turn Offset" float m_manualTurnOffset; // 0x58 }; // Aligment: 12 // Size: 160 class CAimMatrixAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x48 // MPropertyFriendlyName "Sequence" // MPropertyAttributeChoiceName "Sequence" CUtlString m_sequenceName; // 0x50 // MPropertyFriendlyName "Angle Increment" float m_fAngleIncrement; // 0x58 // MPropertyFriendlyName "Can Look Straight Down" bool m_bCanLookStraightDown; // 0x5c // MPropertyFriendlyName "Target" AnimVectorSource m_target; // 0x60 // MPropertyFriendlyName "Parameter" // MPropertyAttributeChoiceName "VectorParameter" AnimParamID m_param; // 0x64 // MPropertyFriendlyName "Aim Attachment" // MPropertyAttributeChoiceName "Attachment" CUtlString m_attachmentName; // 0x68 // MPropertyFriendlyName "Blend Mode" AimMatrixBlendMode m_blendMode; // 0x70 // MPropertyFriendlyName "Bone Mask" // MPropertyAttributeChoiceName "BoneMask" CUtlString m_boneMaskName; // 0x78 // MPropertyFriendlyName "Reset Child" bool m_bResetBase; // 0x80 // MPropertyFriendlyName "Lock Blend When Waning" bool m_bLockWhenWaning; // 0x81 // MPropertyFriendlyName "Damping" CAnimInputDamping m_damping; // 0x88 }; // Aligment: 2 // Size: 80 class CSpeedScaleAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Parameter" // MPropertyAttributeChoiceName "FloatParameter" AnimParamID m_param; // 0x48 }; // Aligment: 7 // Size: 112 class CDirectionalBlendAnimNode : public CAnimNodeBase { public: // MPropertyFriendlyName "Sequence Names Prefix" CUtlString m_animNamePrefix; // 0x40 // MPropertyFriendlyName "Blend Source" // MPropertyAttrChangeCallback AnimValueSource m_blendValueSource; // 0x48 // MPropertyFriendlyName "Parameter" // MPropertyAttributeChoiceName "FloatParameter" // MPropertyAttrStateCallback AnimParamID m_param; // 0x4c // MPropertyFriendlyName "Loop" bool m_bLoop; // 0x50 // MPropertyFriendlyName "Lock Blend on Reset" bool m_bLockBlendOnReset; // 0x51 // MPropertyFriendlyName "Playback Speed" float m_playbackSpeed; // 0x54 // MPropertyFriendlyName "Damping" CAnimInputDamping m_damping; // 0x58 }; // Aligment: 6 // Size: 88 class CWayPointHelperAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Start Cycle" // MPropertyAttributeRange "0 1" float m_flStartCycle; // 0x48 // MPropertyFriendlyName "End Cycle" // MPropertyAttributeRange "0 1" float m_flEndCycle; // 0x4c // MPropertyFriendlyName "Only align to Goals" bool m_bOnlyGoals; // 0x50 // MPropertyFriendlyName "Prevent Overshoot" bool m_bPreventOvershoot; // 0x51 // MPropertyFriendlyName "Prevent Undershoot" bool m_bPreventUndershoot; // 0x52 }; // Aligment: 13 // Size: 128 class CBoneMaskAnimNode : public CAnimNodeBase { public: // MPropertyFriendlyName "Bone Mask" // MPropertyAttributeChoiceName "BoneMask" CUtlString m_weightListName; // 0x40 // MPropertyHideField CNodeConnection m_inputConnection1; // 0x48 // MPropertyHideField CNodeConnection m_inputConnection2; // 0x50 // MPropertyFriendlyName "Blend Space" BoneMaskBlendSpace m_blendSpace; // 0x58 // MPropertyFriendlyName "Use Blend Source" // MPropertyAttrChangeCallback bool m_bUseBlendScale; // 0x5c // MPropertyFriendlyName "Blend Source" // MPropertyAttrChangeCallback // MPropertyAttrStateCallback AnimValueSource m_blendValueSource; // 0x60 // MPropertyFriendlyName "Blend Parameter" // MPropertyAttributeChoiceName "FloatParameter" // MPropertyAttrStateCallback AnimParamID m_blendParameter; // 0x64 // MPropertyFriendlyName "Timing Control" // MPropertyAttrChangeCallback BinaryNodeTiming m_timingBehavior; // 0x68 // MPropertyFriendlyName "Timing Blend" // MPropertyAttributeRange "0 1" // MPropertyAttrStateCallback float m_flTimingBlend; // 0x6c // MPropertyFriendlyName "Root Motion Blend" // MPropertyAttributeRange "0 1" float m_flRootMotionBlend; // 0x70 // MPropertyFriendlyName "Foot Motion Timing" BinaryNodeChildOption m_footMotionTiming; // 0x74 // MPropertyFriendlyName "Reset Child1" bool m_bResetChild1; // 0x78 // MPropertyFriendlyName "Reset Child2" bool m_bResetChild2; // 0x79 }; // Aligment: 1 // Size: 72 class CChoreoAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 }; // Aligment: 3 // Size: 80 class CDirectPlaybackAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Finish Early" bool m_bFinishEarly; // 0x48 // MPropertyFriendlyName "Reset Child On Finish" bool m_bResetOnFinish; // 0x49 }; // Aligment: 7 // Size: 144 class CLeanMatrixAnimNode : public CAnimNodeBase { public: // MPropertyFriendlyName "Sequence" // MPropertyAttributeChoiceName "Sequence" CUtlString m_sequenceName; // 0x48 // MPropertyFriendlyName "Max Value" float m_flMaxValue; // 0x50 // MPropertyFriendlyName "Blend Source" AnimVectorSource m_blendSource; // 0x54 // MPropertyFriendlyName "Parameter" // MPropertyAttributeChoiceName "VectorParameter" AnimParamID m_param; // 0x58 // MPropertyFriendlyName "Vertical Axis" Vector m_verticalAxisDirection; // 0x5c // MPropertyFriendlyName "Horizontal Axis" Vector m_horizontalAxisDirection; // 0x68 // MPropertyFriendlyName "Damping" CAnimInputDamping m_damping; // 0x78 }; // Aligment: 10 // Size: 136 class CTwoBoneIKAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "IK Chain" // MPropertyAttributeChoiceName "IKChain" CUtlString m_ikChainName; // 0x48 // MPropertyGroupName "End Effector" // MPropertyFriendlyName "End Effector Type" // MPropertyAttrChangeCallback IkEndEffectorType m_endEffectorType; // 0x50 // MPropertyGroupName "End Effector" // MPropertyFriendlyName "Attachment" // MPropertyAttributeChoiceName "Attachment" // MPropertyAttrStateCallback CUtlString m_endEffectorAttachmentName; // 0x58 // MPropertyGroupName "Target" // MPropertyFriendlyName "Target Type" // MPropertyAttrChangeCallback IkTargetType m_targetType; // 0x60 // MPropertyGroupName "Target" // MPropertyFriendlyName "Attachment" // MPropertyAttributeChoiceName "Attachment" // MPropertyAttrStateCallback CUtlString m_attachmentName; // 0x68 // MPropertyGroupName "Target" // MPropertyFriendlyName "Bone" // MPropertyAttributeChoiceName "Bone" // MPropertyAttrStateCallback CUtlString m_targetBoneName; // 0x70 // MPropertyGroupName "Target" // MPropertyFriendlyName "Position Parameter" // MPropertyAttributeChoiceName "VectorParameter" // MPropertyAttrStateCallback AnimParamID m_targetParam; // 0x78 // MPropertyGroupName "Target" // MPropertyFriendlyName "Match Target Orientation" // MPropertyAttrChangeCallback bool m_bMatchTargetOrientation; // 0x7c // MPropertyGroupName "Target" // MPropertyFriendlyName "Rotation Parameter" // MPropertyAttributeChoiceName "QuaternionParameter" // MPropertyAttrStateCallback AnimParamID m_rotationParam; // 0x80 }; // Aligment: 16 // Size: 176 class CGroundIKSolveAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "IK Chains" // MPropertyAttributeChoiceName "IKChainOld" CUtlVector< CUtlString > m_IkChains; // 0x48 // MPropertyFriendlyName "Tilt Source" // MPropertyAttributeChoiceEnumName GroundIKTiltSource_t m_TiltSource; // 0x60 // MPropertyFriendlyName "Override Tilt Root" // MPropertyAttributeChoiceName "Bone" CUtlString m_OverrideTiltRoot; // 0x68 // MPropertyFriendlyName "Tilt Attachment" // MPropertyAttributeChoiceName "Attachment" CUtlString m_TiltAttachment; // 0x70 // MPropertyFriendlyName "Override Tilt Spring Strength" float m_flOverrideTiltSpringStrength; // 0x78 // MPropertyFriendlyName "Apply Locks" bool m_bApplyLocks; // 0x7c // MPropertyFriendlyName "Enabled" bool m_bEnabled; // 0x7d // MPropertyFriendlyName "Target Blend Parameter" // MPropertyAttributeChoiceName "FloatParameter" AnimParamID m_TargetBlendParameter; // 0x80 // MPropertyGroupName "Debug" // MPropertyFriendlyName "Debug Bone Types to Draw" // MPropertyAttributeChoiceEnumName CUtlVector< CGroundIKSolveAnimNode::DebugSkeletonBoneType_t > m_DebugDrawBoneTypes; // 0x88 // MPropertyGroupName "Debug" // MPropertyFriendlyName "Debug Draw Lock Values" bool m_bDebugDrawLockValues; // 0xa0 // MPropertyGroupName "Debug" // MPropertyFriendlyName "Debug Lock Values Color" Color m_DebugDrawLockValuesColor; // 0xa1 // MPropertyGroupName "Debug" // MPropertyFriendlyName "Debug Draw Before" bool m_bDebugDrawBefore; // 0xa5 // MPropertyGroupName "Debug" // MPropertyFriendlyName "Debug Before IK Color" Color m_DebugDrawBeforeColor; // 0xa6 // MPropertyGroupName "Debug" // MPropertyFriendlyName "Debug Draw After" bool m_bDebugDrawAfter; // 0xaa // MPropertyGroupName "Debug" // MPropertyFriendlyName "Debug After IK Color" Color m_DebugDrawAfterColor; // 0xab }; // Aligment: 8 // Size: 88 class CSolveIKChainAnimNodeChainData { public: // MPropertyFriendlyName "IK Chain" // MPropertyAttributeChoiceName "IKChain" CUtlString m_IkChain; // 0x8 // MPropertyFriendlyName "Solver Setting Source" // MPropertyAttributeChoiceEnumName // MPropertyAttrChangeCallback SolveIKChainAnimNodeSettingSource m_SolverSettingSource; // 0x10 // MPropertyFriendlyName "Override Solver Settings" // MPropertyAutoExpandGroup // MPropertyAttrStateCallback IKSolverSettings_t m_OverrideSolverSettings; // 0x14 // MPropertyFriendlyName "Target Setting Source" // MPropertyAttributeChoiceEnumName // MPropertyAttrChangeCallback SolveIKChainAnimNodeSettingSource m_TargetSettingSource; // 0x1c // MPropertyFriendlyName "Override Target Settings" // MPropertyAutoExpandGroup // MPropertyAttrStateCallback IKTargetSettings_t m_OverrideTargetSettings; // 0x20 // MPropertyFriendlyName "Debug Setting" // MPropertyGroupName "Debug" SolveIKChainAnimNodeDebugSetting m_DebugSetting; // 0x40 // MPropertyFriendlyName "Debug Normalized Length" // MPropertyGroupName "Debug" float m_flDebugNormalizedLength; // 0x44 // MPropertyFriendlyName "Debug Offset" // MPropertyGroupName "Debug" Vector m_vDebugOffset; // 0x48 }; // Aligment: 2 // Size: 104 class CSolveIKChainAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x48 // MPropertyFriendlyName "IK Chains" // MPropertyAutoExpandGroup CUtlVector< CSolveIKChainAnimNodeChainData > m_IkChains; // 0x50 }; // Aligment: 14 // Size: 152 class CLookAtAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Target" AnimVectorSource m_target; // 0x48 // MPropertyFriendlyName "Target Parameter" // MPropertyAttributeChoiceName "VectorParameter" AnimParamID m_param; // 0x4c // MPropertyFriendlyName "Weight Parameter" // MPropertyAttributeChoiceName "FloatParameter" AnimParamID m_weightParam; // 0x50 // MPropertyFriendlyName "LookAt Chain" // MPropertyAttributeChoiceName "LookAtChain" CUtlString m_lookatChainName; // 0x58 // MPropertyFriendlyName "Aim Attachment" // MPropertyAttributeChoiceName "Attachment" CUtlString m_attachmentName; // 0x60 // MPropertyFriendlyName "Yaw Limit" // MPropertyAttributeRange "0 180" float m_flYawLimit; // 0x68 // MPropertyFriendlyName "Pitch Limit" // MPropertyAttributeRange "0 180" float m_flPitchLimit; // 0x6c // MPropertyFriendlyName "Reset Child" bool m_bResetBase; // 0x70 // MPropertyFriendlyName "Lock Blend When Waning" bool m_bLockWhenWaning; // 0x71 // MPropertyFriendlyName "Use Hysteresis" // MPropertyGroupName "Hysteresis" bool m_bUseHysteresis; // 0x72 // MPropertyFriendlyName "Inner Angle" // MPropertyGroupName "Hysteresis" float m_flHysteresisInnerAngle; // 0x74 // MPropertyFriendlyName "Outer Angle" // MPropertyGroupName "Hysteresis" float m_flHysteresisOuterAngle; // 0x78 // MPropertyFriendlyName "Damping" CAnimInputDamping m_damping; // 0x80 }; // Aligment: 4 // Size: 120 class CNeuralNetAnimNode : public CAnimNodeBase { public: // MPropertyFriendlyName "Weights File" CUtlString m_weightsFile; // 0x40 // MPropertyFriendlyName "Test Input File" CUtlString m_testInputFile; // 0x48 // MPropertyFriendlyName "Bone Map File" CUtlString m_boneMapFile; // 0x50 // MPropertyFriendlyName "Sensor Range File" CUtlString m_sensorRangeFile; // 0x58 }; // Aligment: 3 // Size: 80 class CPathHelperAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Stopping Radius" float m_flStoppingRadius; // 0x48 // MPropertyFriendlyName "Stopping Min Speed Scale" float m_flStoppingSpeedScale; // 0x4c }; // Aligment: 5 // Size: 96 class CFollowAttachmentAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Bone" // MPropertyAttributeChoiceName "Bone" CUtlString m_boneName; // 0x48 // MPropertyFriendlyName "Target Attachment" // MPropertyAttributeChoiceName "Attachment" CUtlString m_attachmentName; // 0x50 // MPropertyFriendlyName "Match Translation" bool m_bMatchTranslation; // 0x58 // MPropertyFriendlyName "Match Rotation" bool m_bMatchRotation; // 0x59 }; // Aligment: 4 // Size: 80 class CSkeletalInputAnimNode : public CAnimNodeBase { public: // MPropertyFriendlyName "Data Source" // MPropertyAttrChangeCallback AnimVrBoneTransformSource_t m_transformSource; // 0x40 // MPropertyFriendlyName "Motion Range" // MPropertyAttrStateCallback AnimVRHandMotionRange_t m_motionRange; // 0x44 // MPropertyFriendlyName "Enable IK" // MPropertyGroupName "+Retargetting" bool m_bEnableIK; // 0x48 // MPropertyFriendlyName "Enable Collision" // MPropertyGroupName "+Retargetting" bool m_bEnableCollision; // 0x49 }; // Aligment: 10 // Size: 160 class CSelectorAnimNode : public CAnimNodeBase { public: // MPropertySuppressField CUtlVector< CNodeConnection > m_children; // 0x48 // MPropertySuppressField CUtlVector< AnimTagID > m_tags; // 0x60 // MPropertyFriendlyName "Selection Source" // MPropertyAttrChangeCallback SelectionSource_t m_selectionSource; // 0x78 // MPropertyFriendlyName "Bool Parameter" // MPropertyAttributeChoiceName "BoolParameter" // MPropertyAttrChangeCallback // MPropertyAttrStateCallback AnimParamID m_boolParamID; // 0x7c // MPropertyFriendlyName "Enum Parameter" // MPropertyAttributeChoiceName "EnumParameter" // MPropertyAttrChangeCallback // MPropertyAttrStateCallback AnimParamID m_enumParamID; // 0x80 // MPropertyFriendlyName "Blend Duration" float m_blendDuration; // 0x84 // MPropertyFriendlyName "Tag Behavior" SelectorTagBehavior_t m_tagBehavior; // 0x88 // MPropertyFriendlyName "Reset On Change" bool m_bResetOnChange; // 0x8c // MPropertyFriendlyName "Start new option at same cycle" bool m_bSyncCyclesOnChange; // 0x8d // MPropertySuppressField CBlendCurve m_blendCurve; // 0x90 }; // Aligment: 24 // Size: 176 class CHitReactAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Minimum Delay Between Hits" float m_flMinDelayBetweenHits; // 0x48 // MPropertyFriendlyName "Trigger Parameter" // MPropertyAttributeChoiceName "BoolParameter" AnimParamID m_triggerParam; // 0x4c // MPropertyFriendlyName "Hit Bone Parameter" // MPropertyAttributeChoiceName "IntParameter" AnimParamID m_hitBoneParam; // 0x50 // MPropertyFriendlyName "Hit Offset Parameter" // MPropertyAttributeChoiceName "VectorParameter" AnimParamID m_hitOffsetParam; // 0x54 // MPropertyFriendlyName "Hit Direction Parameter" // MPropertyAttributeChoiceName "VectorParameter" AnimParamID m_hitDirectionParam; // 0x58 // MPropertyFriendlyName "Hit Strength Parameter" // MPropertyAttributeChoiceName "FloatParameter" AnimParamID m_hitStrengthParam; // 0x5c // MPropertyFriendlyName "Bone Weights" // MPropertyAttributeChoiceName "BoneMask" CUtlString m_weightListName; // 0x60 // MPropertyFriendlyName "Hip Bone" // MPropertyAttributeChoiceName "Bone" CUtlString m_hipBoneName; // 0x68 // MPropertyFriendlyName "Hip Translation Scale" float m_flHipBoneTranslationScale; // 0x70 // MPropertyFriendlyName "Number of bone effected" int32_t m_nEffectedBoneCount; // 0x74 // MPropertyFriendlyName "Max Impact Force" float m_flMaxImpactForce; // 0x78 // MPropertyFriendlyName "Min Impact Force" float m_flMinImpactForce; // 0x7c // MPropertyFriendlyName "Whip Impact Scale" float m_flWhipImpactScale; // 0x80 // MPropertyFriendlyName "Counter Rotation Scale" float m_flCounterRotationScale; // 0x84 // MPropertyFriendlyName "Distance Fade Scale" float m_flDistanceFadeScale; // 0x88 // MPropertyFriendlyName "Propagation Scale" float m_flPropagationScale; // 0x8c // MPropertyFriendlyName "Whip Delay Time" float m_flWhipDelay; // 0x90 // MPropertyFriendlyName "Spring Strength" float m_flSpringStrength; // 0x94 // MPropertyFriendlyName "Whip Spring Strength" float m_flWhipSpringStrength; // 0x98 // MPropertyFriendlyName "Hip Dip Spring Strength" float m_flHipDipSpringStrength; // 0x9c // MPropertyFriendlyName "Hip Dip Scale" float m_flHipDipImpactScale; // 0xa0 // MPropertyFriendlyName "Hip Dip Delay Time" float m_flHipDipDelay; // 0xa4 // MPropertyFriendlyName "Reset Child" bool m_bResetBase; // 0xa8 }; // Aligment: 3 // Size: 64 class CBlend2DItem { public: // MPropertySuppressField CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x10 // MPropertyFriendlyName "Sequence" // MPropertyAttributeChoiceName "Sequence" CUtlString m_sequenceName; // 0x28 // MPropertyFriendlyName "Blend Value" Vector2D m_blendValue; // 0x30 }; // Aligment: 10 // Size: 152 class CBlend2DAnimNode : public CAnimNodeBase { public: // MPropertySuppressField CUtlVector< CBlend2DItem > m_items; // 0x50 // MPropertyFriendlyName "Horizontal Axis" // MPropertyAttrChangeCallback AnimValueSource m_blendSourceX; // 0x68 // MPropertyFriendlyName "Horizontal Parameter" // MPropertyAttributeChoiceName "FloatParameter" // MPropertyAttrStateCallback AnimParamID m_paramX; // 0x6c // MPropertyFriendlyName "Vertical Axis" // MPropertyAttrChangeCallback AnimValueSource m_blendSourceY; // 0x70 // MPropertyFriendlyName "Vertical Parameter" // MPropertyAttributeChoiceName "FloatParameter" // MPropertyAttrStateCallback AnimParamID m_paramY; // 0x74 // MPropertyFriendlyName "Loop" bool m_bLoop; // 0x78 // MPropertyFriendlyName "Lock Blend on Reset" bool m_bLockBlendOnReset; // 0x79 // MPropertyFriendlyName "Lock Blend When Waning" bool m_bLockWhenWaning; // 0x7a // MPropertyFriendlyName "Playback Speed" float m_playbackSpeed; // 0x7c // MPropertyFriendlyName "Damping" CAnimInputDamping m_damping; // 0x80 }; // Aligment: 7 // Size: 40 class CFootLockItem { public: // MPropertyFriendlyName "Foot" // MPropertyAttributeChoiceName "Foot" CUtlString m_footName; // 0x0 // MPropertyFriendlyName "Target Bone" // MPropertyAttributeChoiceName "Bone" CUtlString m_targetBoneName; // 0x8 // MPropertyFriendlyName "IK Chain" // MPropertyAttributeChoiceName "IKChain" CUtlString m_ikChainName; // 0x10 // MPropertyFriendlyName "Disable Tag" // MPropertyAttributeChoiceName "Tag" AnimTagID m_disableTagID; // 0x18 // MPropertyFriendlyName "Max Left Rotation" // MPropertyAttributeRange "0 180" float m_flMaxRotationLeft; // 0x1c // MPropertyFriendlyName "Max Right Rotation" // MPropertyAttributeRange "0 180" float m_flMaxRotationRight; // 0x20 // MPropertyFriendlyName "Footstep Landed Tag" // MPropertyAttributeChoiceName "Tag" AnimTagID m_footstepLandedTag; // 0x24 }; // Aligment: 36 // Size: 296 class CFootLockAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Feet" // MPropertyAutoExpandGroup CUtlVector< CFootLockItem > m_items; // 0x48 // MPropertyFriendlyName "Hip Bone" // MPropertyAttributeChoiceName "Bone" CUtlString m_hipBoneName; // 0x60 // MPropertyFriendlyName "Blend Time" float m_flBlendTime; // 0x68 // MPropertyFriendlyName "Apply Foot Rotation Limits" bool m_bApplyFootRotationLimits; // 0x6c // MPropertyFriendlyName "Reset Child" bool m_bResetChild; // 0x6d // MPropertyFriendlyName "IK Solver Type" // MPropertyGroupName "IK" // MPropertyAttrChangeCallback IKSolverType m_ikSolverType; // 0x70 // MPropertyFriendlyName "Always use fallback hinge" // MPropertyGroupName "IK" // MPropertyAttrStateCallback bool m_bAlwaysUseFallbackHinge; // 0x74 // MPropertyFriendlyName "Curve Foot Paths" // MPropertyGroupName "Curve Paths" // MPropertyAttributeRange "0 1" float m_flStrideCurveScale; // 0x78 // MPropertyFriendlyName "Curve Paths Limit" // MPropertyGroupName "Curve Paths" // MPropertyAttributeRange "0 1" float m_flStrideCurveLimitScale; // 0x7c // MPropertyFriendlyName "Enable Vertical Curved Paths" // MPropertyGroupName "Curve Paths" bool m_bEnableVerticalCurvedPaths; // 0x80 // MPropertyFriendlyName "Modulate Step Height" // MPropertyGroupName "Step Height" // MPropertyAttrChangeCallback bool m_bModulateStepHeight; // 0x81 // MPropertyFriendlyName "Height Increase Scale" // MPropertyGroupName "Step Height" // MPropertyAttrStateCallback float m_flStepHeightIncreaseScale; // 0x84 // MPropertyFriendlyName "Height Decrease Scale" // MPropertyGroupName "Step Height" // MPropertyAttrStateCallback float m_flStepHeightDecreaseScale; // 0x88 // MPropertyFriendlyName "Enable Hip Shift" // MPropertyGroupName "Hip Shift" bool m_bEnableHipShift; // 0x8c // MPropertyFriendlyName "Hip Shift Scale" // MPropertyGroupName "Hip Shift" // MPropertyAttributeRange "0 1" float m_flHipShiftScale; // 0x90 // MPropertyFriendlyName "Damping" // MPropertyGroupName "Hip Shift" CAnimInputDamping m_hipShiftDamping; // 0x98 // MPropertyFriendlyName "Apply Tilt" // MPropertyGroupName "Tilt" bool m_bApplyTilt; // 0xb0 // MPropertyFriendlyName "Tilt Plane Pitch Spring Strength" // MPropertyGroupName "Tilt" float m_flTiltPlanePitchSpringStrength; // 0xb4 // MPropertyFriendlyName "Tilt Plane Roll Spring Strength" // MPropertyGroupName "Tilt" float m_flTiltPlaneRollSpringStrength; // 0xb8 // MPropertyFriendlyName "Enable Lock Breaking" // MPropertyGroupName "Lock Breaking" bool m_bEnableLockBreaking; // 0xbc // MPropertyFriendlyName "Tolerance" // MPropertyGroupName "Lock Breaking" float m_flLockBreakTolerance; // 0xc0 // MPropertyFriendlyName "Blend Time" // MPropertyGroupName "Lock Breaking" float m_flLockBreakBlendTime; // 0xc4 // MPropertyFriendlyName "Enable Stretching" // MPropertyGroupName "Stretch" bool m_bEnableStretching; // 0xc8 // MPropertyFriendlyName "Max Stretch Amount" // MPropertyGroupName "Stretch" float m_flMaxStretchAmount; // 0xcc // MPropertyFriendlyName "Extension Scale" // MPropertyGroupName "Stretch" // MPropertyAttributeRange "0 1" float m_flStretchExtensionScale; // 0xd0 // MPropertyFriendlyName "Enable Ground Tracing" // MPropertyGroupName "Ground IK" // MPropertyAttrChangeCallback bool m_bEnableGroundTracing; // 0xd4 // MPropertyFriendlyName "Angle Traces with Slope" // MPropertyGroupName "Ground IK" // MPropertyAttributeRange "0 1" // MPropertyAttrStateCallback float m_flTraceAngleBlend; // 0xd8 // MPropertyFriendlyName "Apply Hip Drop" // MPropertyGroupName "Ground IK" // MPropertyAttrChangeCallback // MPropertyAttrStateCallback bool m_bApplyHipDrop; // 0xdc // MPropertyFriendlyName "Max Foot Lift" // MPropertyGroupName "Ground IK" // MPropertyAttrStateCallback float m_flMaxFootHeight; // 0xe0 // MPropertyFriendlyName "Leg Extension Scale" // MPropertyGroupName "Ground IK" // MPropertyAttrStateCallback float m_flExtensionScale; // 0xe4 // MPropertyFriendlyName "Hip Damping" // MPropertyGroupName "Ground IK" // MPropertyAttrStateCallback CAnimInputDamping m_hipDampingSettings; // 0xe8 // MPropertyFriendlyName "Enable Root Height Damping" // MPropertyGroupName "Root Height Damping" // MPropertyAttrChangeCallback bool m_bEnableRootHeightDamping; // 0x100 // MPropertyFriendlyName "Damping Settings" // MPropertyGroupName "Root Height Damping" // MPropertyAttrStateCallback CAnimInputDamping m_rootHeightDamping; // 0x108 // MPropertyFriendlyName "Max Offset" // MPropertyGroupName "Root Height Damping" // MPropertyAttrStateCallback float m_flMaxRootHeightOffset; // 0x120 // MPropertyFriendlyName "Min Offset" // MPropertyGroupName "Root Height Damping" // MPropertyAttrStateCallback float m_flMinRootHeightOffset; // 0x124 }; // Aligment: 14 // Size: 136 class CFollowPathAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Blend Out Time" float m_flBlendOutTime; // 0x48 // MPropertyFriendlyName "Block Non-Path Movement" bool m_bBlockNonPathMovement; // 0x4c // MPropertyFriendlyName "Stop Feet at Goal" bool m_bStopFeetAtGoal; // 0x4d // MPropertyFriendlyName "Enable Speed Scaling" // MPropertyGroupName "Speed Scaling" // MPropertyAttrChangeCallback bool m_bScaleSpeed; // 0x4e // MPropertyFriendlyName "Scale" // MPropertyGroupName "Speed Scaling" // MPropertyAttributeRange "0 1" // MPropertyAttrStateCallback float m_flScale; // 0x50 // MPropertyFriendlyName "Min Angle" // MPropertyGroupName "Speed Scaling" // MPropertyAttributeRange "0 180" // MPropertyAttrStateCallback float m_flMinAngle; // 0x54 // MPropertyFriendlyName "Max Angle" // MPropertyGroupName "Speed Scaling" // MPropertyAttributeRange "0 180" // MPropertyAttrStateCallback float m_flMaxAngle; // 0x58 // MPropertyFriendlyName "Blend Time" // MPropertyGroupName "Speed Scaling" // MPropertyAttrStateCallback float m_flSpeedScaleBlending; // 0x5c // MPropertyFriendlyName "Enable Turn to Face" // MPropertyGroupName "Turn to Face" // MPropertyAttrChangeCallback bool m_bTurnToFace; // 0x60 // MPropertyFriendlyName "Target" // MPropertyGroupName "Turn to Face" // MPropertyAttrChangeCallback // MPropertyAttrStateCallback AnimValueSource m_facingTarget; // 0x64 // MPropertyFriendlyName "Parameter" // MPropertyGroupName "Turn to Face" // MPropertyAttributeChoiceName "FloatParameter" // MPropertyAttrStateCallback AnimParamID m_param; // 0x68 // MPropertyFriendlyName "Offset" // MPropertyGroupName "Turn to Face" // MPropertyAttributeRange "-180 180" // MPropertyAttrStateCallback float m_flTurnToFaceOffset; // 0x6c // MPropertyFriendlyName "Damping" // MPropertyGroupName "Turn to Face" // MPropertyAttrStateCallback CAnimInputDamping m_damping; // 0x70 }; // Aligment: 24 // Size: 232 class CMotionMatchingAnimNode : public CAnimNodeBase { public: // MPropertySuppressField CUtlVector< CSmartPtr< CMotionClipGroup > > m_clipGroups; // 0x50 // MPropertySuppressField CUtlVector< CSmartPtr< CMotionMetricBase > > m_metrics; // 0x68 // MPropertySuppressField CBlendCurve m_blendCurve; // 0x80 // MPropertyFriendlyName "Prediction Time" float m_flPredictionTime; // 0x90 // MPropertyFriendlyName "Sampling Method" // MPropertyAttrChangeCallback MotionSamplingMethod m_samplingMethod; // 0x94 // MPropertyFriendlyName "Sample Rate" // MPropertyAttrStateCallback float m_flSampleRate; // 0x98 // MPropertyFriendlyName "Search at fixed interval" // MPropertyGroupName "Search Triggers" // MPropertyAttrChangeCallback bool m_bSearchAtInterval; // 0x9c // MPropertyFriendlyName "Search Interval" // MPropertyGroupName "Search Triggers" // MPropertyAttrStateCallback float m_flSearchInterval; // 0xa0 // MPropertyFriendlyName "Search on Steps" // MPropertyGroupName "Search Triggers" bool m_bSearchOnSteps; // 0xa4 // MPropertyFriendlyName "Search when tags change" // MPropertyGroupName "Search Triggers" bool m_bForceSearchWhenTagsChange; // 0xa5 // MPropertyFriendlyName "Search when clip ends" // MPropertyGroupName "Search Triggers" bool m_bSearchWhenClipEnds; // 0xa6 // MPropertyFriendlyName "Search when goal changes" // MPropertyGroupName "Search Triggers" bool m_bSearchWhenGoalChanges; // 0xa7 // MPropertyFriendlyName "Blend Time" float m_flBlendTime; // 0xa8 // MPropertyFriendlyName "Selection Threshold" float m_flSelectionThreshold; // 0xac // MPropertyFriendlyName "Lock Clip When Waning" bool m_bLockClipWhenWaning; // 0xb0 // MPropertyFriendlyName "Enable Goal Assist" // MPropertyGroupName "Goal Assist" // MPropertyAttrChangeCallback bool m_bGoalAssist; // 0xb1 // MPropertyFriendlyName "Goal Assist Distance" // MPropertyGroupName "Goal Assist" // MPropertyAttrStateCallback float m_flGoalAssistDistance; // 0xb4 // MPropertyFriendlyName "Goal Assist Tolerance" // MPropertyGroupName "Goal Assist" // MPropertyAttrStateCallback float m_flGoalAssistTolerance; // 0xb8 // MPropertyFriendlyName "Enable Distance Scaling" // MPropertyGroupName "Distance Scaling" // MPropertyAttrChangeCallback bool m_bEnableDistanceScaling; // 0xbc // MPropertyFriendlyName "Outer Stopping Radius" // MPropertyGroupName "Distance Scaling" // MPropertyAttrStateCallback float m_flDistanceScale_OuterRadius; // 0xc0 // MPropertyFriendlyName "Inner Stopping Radius" // MPropertyGroupName "Distance Scaling" // MPropertyAttrStateCallback float m_flDistanceScale_InnerRadius; // 0xc4 // MPropertyFriendlyName "Maximum Speed Scale" // MPropertyGroupName "Distance Scaling" // MPropertyAttrStateCallback float m_flDistanceScale_MaxScale; // 0xc8 // MPropertyFriendlyName "Minimum Speed Scale" // MPropertyGroupName "Distance Scaling" // MPropertyAttrStateCallback float m_flDistanceScale_MinScale; // 0xcc // MPropertyFriendlyName "Damping" // MPropertyGroupName "Distance Scaling" // MPropertyAttrStateCallback CAnimInputDamping m_distanceScale_Damping; // 0xd0 }; // Aligment: 3 // Size: 80 class CSetFacingAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Facing Mode" FacingMode m_facingMode; // 0x48 // MPropertyFriendlyName "Reset Child" bool m_bResetChild; // 0x4c }; // Aligment: 6 // Size: 112 class CStopAtGoalAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Outer Stopping Radius" float m_flOuterRadius; // 0x48 // MPropertyFriendlyName "Inner Stopping Radius" float m_flInnerRadius; // 0x4c // MPropertyFriendlyName "Maximum Speed Scale" float m_flMaxScale; // 0x50 // MPropertyFriendlyName "Minimum Speed Scale" float m_flMinScale; // 0x54 // MPropertyFriendlyName "Damping" CAnimInputDamping m_damping; // 0x58 }; // Aligment: 7 // Size: 48 class CJiggleBoneItem { public: // MPropertyFriendlyName "Bone" // MPropertyAttributeChoiceName "Bone" CUtlString m_boneName; // 0x0 // MPropertyFriendlyName "Spring Strength" float m_flSpringStrength; // 0x8 // MPropertyFriendlyName "Sim Rate (FPS)" float m_flSimRateFPS; // 0xc // MPropertyFriendlyName "Damping" // MPropertyAttributeRange "0 1" float m_flDamping; // 0x10 // MPropertyFriendlyName "Sim Space" JiggleBoneSimSpace m_eSimSpace; // 0x14 // MPropertyFriendlyName "Max" // MPropertyGroupName "Movement Limits" Vector m_vBoundsMaxLS; // 0x18 // MPropertyFriendlyName "Min" // MPropertyGroupName "Movement Limits" Vector m_vBoundsMinLS; // 0x24 }; // Aligment: 2 // Size: 96 class CJiggleBoneAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Jiggle Bones" // MPropertyAutoExpandGroup CUtlVector< CJiggleBoneItem > m_items; // 0x48 }; // Aligment: 3 // Size: 120 class CSingleFrameAnimNode : public CAnimNodeBase { public: // MPropertyFriendlyName "Sequence" // MPropertyAttributeChoiceName "Sequence" CUtlString m_sequenceName; // 0x50 // MPropertyFriendlyName "Frame" int32_t m_nFrameIndex; // 0x58 // MPropertySuppressField CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x60 }; // Aligment: 3 // Size: 96 class CCommentAnimNode : public CAnimNodeBase { public: // MPropertySuppressField CUtlString m_commentText; // 0x48 // MPropertySuppressField Vector2D m_size; // 0x50 // MPropertyFriendlyName "Color" // MPropertyColorWithNoAlpha Color m_color; // 0x58 }; // Aligment: 0 // Size: 64 class CInputStreamAnimNode : public CAnimNodeBase { public: // }; // Aligment: 3 // Size: 40 class CFootStepTriggerItem { public: // MPropertyFriendlyName "Foot" // MPropertyAttributeChoiceName "Foot" CUtlString m_footName; // 0x0 // MPropertyFriendlyName "Trigger Phase" StepPhase m_triggerPhase; // 0x8 // MPropertyFriendlyName "Tags" // MPropertyAttributeChoiceName "Tag" CUtlVector< AnimTagID > m_tags; // 0x10 }; // Aligment: 3 // Size: 104 class CFootStepTriggerAnimNode : public CAnimNodeBase { public: // MPropertyHideField CNodeConnection m_inputConnection; // 0x40 // MPropertyFriendlyName "Tolerance" float m_flTolerance; // 0x48 // MPropertyFriendlyName "Feet" // MPropertyAutoExpandGroup CUtlVector< CFootStepTriggerItem > m_items; // 0x50 }; // Aligment: 3 // Size: 24 class CConnectionProxyItem { public: // MPropertyFriendlyName "Name" CUtlString m_name; // 0x0 // MPropertyHideField AnimOutputID m_outputID; // 0x8 // MPropertyHideField CNodeConnection m_inputConnection; // 0xc }; // Aligment: 2 // Size: 128 class CGroupAnimNode : public CAnimNodeBase { public: // MPropertyHideField AnimNodeID m_inputNodeID; // 0x48 // MPropertyHideField AnimNodeID m_outputNodeID; // 0x4c }; // Aligment: 1 // Size: 88 class CGroupInputAnimNode : public CAnimNodeBase { public: // MPropertyFriendlyName "External Connections" // MPropertyAutoExpandGroup // MPropertyAttrStateCallback CUtlVector< CConnectionProxyItem > m_proxyItems; // 0x40 }; // Aligment: 1 // Size: 88 class CGroupOutputAnimNode : public CAnimNodeBase { public: // MPropertyFriendlyName "External Connections" // MPropertyAutoExpandGroup // MPropertyAttrStateCallback CUtlVector< CConnectionProxyItem > m_proxyItems; // 0x40 }; // Aligment: 3 // Size: 152 class CSubGraphAnimNode : public CAnimNodeBase { public: // MPropertyHideField AnimNodeID m_inputNodeID; // 0x48 // MPropertyHideField AnimNodeID m_outputNodeID; // 0x4c // MPropertyAttributeEditor "AssetBrowse( vsubgrph )" // MPropertyFriendlyName "SubGraph File" // MPropertyAttrChangeCallback CUtlString m_subGraphFilename; // 0x70 }; // Aligment: 12 // Size: 144 class CAnimState { public: // MPropertySuppressField CUtlVector< CSmartPtr< CAnimStateTransition > > m_transitions; // 0x20 // MPropertySuppressField CUtlVector< AnimTagID > m_tags; // 0x38 // MPropertySuppressField CUtlVector< uint8 > m_tagBehaviors; // 0x50 // MPropertyFriendlyName "Name" // MPropertySortPriority "100" CUtlString m_name; // 0x68 // MPropertyHideField CNodeConnection m_inputConnection; // 0x70 // MPropertyHideField AnimStateID m_stateID; // 0x78 // MPropertyHideField Vector2D m_position; // 0x7c // MPropertyFriendlyName "Start State" bool m_bIsStartState; // 0x84 // MPropertyFriendlyName "End State" bool m_bIsEndtState; // 0x85 // MPropertyFriendlyName "Passthrough" bool m_bIsPassthrough; // 0x86 // MPropertyFriendlyName "Exclusive Root Motion" bool m_bIsRootMotionExclusive; // 0x87 // MPropertyFriendlyName "Always Evaluate" bool m_bAlwaysEvaluate; // 0x88 }; // Aligment: 9 // Size: 96 class CAnimStateTransition { public: // MPropertySuppressField CUtlVector< CSmartPtr< CAnimStateConditionBase > > m_conditions; // 0x20 // MPropertyFriendlyName "Blend Duration" float m_blendDuration; // 0x38 // MPropertyHideField AnimStateID m_destState; // 0x3c // MPropertyFriendlyName "Reset Destination" bool m_bReset; // 0x40 // MPropertyFriendlyName "Start Cycle At" ResetCycleOption m_resetCycleOption; // 0x44 // MPropertyFriendlyName "Fixed Start Cycle Value" float m_flFixedCycleValue; // 0x48 // MPropertySuppressField CBlendCurve m_blendCurve; // 0x4c // MPropertyFriendlyName "Park Feet" bool m_bForceFootPlant; // 0x5c // MPropertyFriendlyName "Disable" bool m_bDisabled; // 0x5d }; // Aligment: 1 // Size: 40 class CAnimStateConditionBase { public: uint8_t m_comparisonOp; // 0x20 }; // Aligment: 2 // Size: 72 class CParameterAnimCondition : public CAnimStateConditionBase { public: // MPropertyFriendlyName "Parameter" // MPropertyAttributeChoiceName "Parameter" AnimParamID m_paramID; // 0x28 // MPropertyFriendlyName "Comparison Value" CAnimVariant m_comparisonValue; // 0x2c }; // Aligment: 2 // Size: 56 class CTagCondition : public CAnimStateConditionBase { public: // MPropertyFriendlyName "Tag" // MPropertyAttributeChoiceName "Tag" AnimTagID m_tagID; // 0x28 // MPropertyFriendlyName "Value" bool m_comparisonValue; // 0x2c }; // Aligment: 4 // Size: 64 class CCycleCondition : public CAnimStateConditionBase { public: float m_comparisonValue; // 0x28 int32_t m_comparisonValueType; // 0x2c ControlValue m_comparisonControlValue; // 0x30 AnimParamID m_comparisonParamID; // 0x34 }; // Aligment: 2 // Size: 56 class CFinishedCondition : public CAnimStateConditionBase { public: FinishedConditionOption m_option; // 0x28 bool m_bIsFinished; // 0x2c }; // Aligment: 1 // Size: 48 class CLookHeadingCondition : public CAnimStateConditionBase { public: // MPropertyFriendlyName "Comparison Value" float m_comparisonValue; // 0x2c }; // Aligment: 1 // Size: 48 class CLookPitchCondition : public CAnimStateConditionBase { public: // MPropertyFriendlyName "Comparison Value" float m_comparisonValue; // 0x2c }; // Aligment: 1 // Size: 48 class CMoveHeadingCondition : public CAnimStateConditionBase { public: // MPropertyFriendlyName "Comparison Value" float m_comparisonValue; // 0x2c }; // Aligment: 1 // Size: 48 class CMoveSpeedCondition : public CAnimStateConditionBase { public: // MPropertyFriendlyName "Comparison Value" float m_comparisonValue; // 0x2c }; // Aligment: 1 // Size: 48 class CFacingHeadingCondition : public CAnimStateConditionBase { public: // MPropertyFriendlyName "Comparison Value" float m_comparisonValue; // 0x2c }; // Aligment: 2 // Size: 56 class CPathStatusCondition : public CAnimStateConditionBase { public: PathStatusOptions m_optionToCheck; // 0x28 bool m_bComparisonValue; // 0x2c }; // Aligment: 5 // Size: 64 class CControlValueCondition : public CAnimStateConditionBase { public: ControlValue m_sourceControlValue; // 0x28 int32_t m_comparisonValueType; // 0x2c float m_comparisonFixedValue; // 0x30 ControlValue m_comparisonControlValue; // 0x34 AnimParamID m_comparisonParamID; // 0x38 }; // Aligment: 1 // Size: 48 class CTimeCondition : public CAnimStateConditionBase { public: // MPropertyFriendlyName "Value" float m_comparisonValue; // 0x28 }; // Aligment: 1 // Size: 48 class CGroundCondition : public CAnimStateConditionBase { public: // MPropertyFriendlyName "Value" bool m_comparisonValue; // 0x28 }; // Aligment: 3 // Size: 48 class CAnimTagSpan { public: AnimTagID m_id; // 0x20 float m_fStartCycle; // 0x24 float m_fDuration; // 0x28 }; // Aligment: 2 // Size: 72 class CAnimMovementManager { public: CAnimMotorList m_MotorList; // 0x18 CAnimMovementSettings m_MovementSettings; // 0x38 }; // Aligment: 1 // Size: 48 class CAnimTagManager { public: CUtlVector< CSmartPtr< CAnimTagBase > > m_tags; // 0x18 }; // Aligment: 2 // Size: 40 class CAnimTagBase { public: // MPropertyFriendlyName "Name" // MPropertySortPriority "100" CUtlString m_name; // 0x18 // MPropertyHideField AnimTagID m_tagID; // 0x20 }; // Aligment: 0 // Size: 48 class CStringAnimTag : public CAnimTagBase { public: // }; // Aligment: 1 // Size: 56 class CPostGraphIKTag : public CAnimTagBase { public: // MPropertyFriendlyName "Blend Amount" float m_flBlendAmount; // 0x30 }; // Aligment: 3 // Size: 64 class CPostGraphIKChainBlendTag : public CAnimTagBase { public: // MPropertyFriendlyName "Chain Name" CUtlString m_ChainName; // 0x30 // MPropertyFriendlyName "Blend Amount on Enter" float m_flBlendAmountOnEnter; // 0x38 // MPropertyFriendlyName "Blend Amount on Exit" float m_flBlendAmountOnExit; // 0x3c }; // Aligment: 1 // Size: 56 class CFootFallAnimTag : public CAnimTagBase { public: // MPropertyFriendlyName "Foot" FootFallTagFoot_t m_foot; // 0x30 }; // Aligment: 1 // Size: 56 class CAudioAnimTag : public CAnimTagBase { public: // MPropertyFriendlyName "Audio Clip" // MPropertyAttributeEditor "SoundPicker" CUtlString m_clipName; // 0x30 }; // Aligment: 4 // Size: 80 class CFootstepLandedAnimTag : public CAnimTagBase { public: // MPropertyFriendlyName "Footstep Type" FootstepLandedFootSoundType_t m_FootstepType; // 0x30 // MPropertyFriendlyName "Override Sound" // MPropertyAttributeChoiceName "Sound" CUtlString m_OverrideSoundName; // 0x38 // MPropertyFriendlyName "Debug Name" CUtlString m_DebugAnimSourceString; // 0x40 // MPropertyFriendlyName "Bone Name" // MPropertyAttributeChoiceName "Bone" CUtlString m_BoneName; // 0x48 }; // Aligment: 1 // Size: 56 class CSequenceFinishedAnimTag : public CAnimTagBase { public: // MPropertyFriendlyName "Sequence" // MPropertyAttributeChoiceName "Sequence" CUtlString m_sequenceName; // 0x30 }; // Aligment: 1 // Size: 64 class CTaskStatusAnimTag : public CAnimTagBase { public: // MPropertyHideField CUtlString m_identifierString; // 0x30 }; // Aligment: 4 // Size: 72 class CClothSettingsAnimTag : public CAnimTagBase { public: // MPropertyFriendlyName "Stiffness" // MPropertyAttributeRange "0 1" float m_flStiffness; // 0x30 // MPropertyFriendlyName "EaseIn" // MPropertyAttributeRange "0 1" float m_flEaseIn; // 0x34 // MPropertyFriendlyName "EaseOut" // MPropertyAttributeRange "0 1" float m_flEaseOut; // 0x38 // MPropertyFriendlyName "VertexSet" CUtlString m_nVertexSet; // 0x40 }; // Aligment: 6 // Size: 72 class CRagdollAnimTag : public CAnimTagBase { public: // MPropertyFriendlyName "Pose Control" AnimPoseControl m_nPoseControl; // 0x30 // MPropertyFriendlyName "Frequency" // MPropertyAttributeRange "0 30" float m_flFrequency; // 0x34 // MPropertyFriendlyName "Damping Ratio" // MPropertyAttributeRange "0 2" float m_flDampingRatio; // 0x38 // MPropertyFriendlyName "Decay Duration" // MPropertyAttributeRange "-1 1000" float m_flDecayDuration; // 0x3c // MPropertyFriendlyName "Decay Bias" // MPropertyAttributeRange "0 1" float m_flDecayBias; // 0x40 // MPropertyFriendlyName "Destroy" bool m_bDestroy; // 0x44 }; // Aligment: 4 // Size: 72 class CParticleAnimTag : public CAnimTagBase { public: // MPropertyAttributeEditor "AssetBrowse( vpcf )" // MPropertyFriendlyName "Particle System" CUtlString m_particleSystemName; // 0x30 // MPropertyFriendlyName "Configuration" CUtlString m_configName; // 0x38 // MPropertyFriendlyName "Stop on Tag End" bool m_bStopWhenTagEnds; // 0x40 // MPropertyFriendlyName "Tag End Stop is Instant" bool m_bTagEndStopIsInstant; // 0x41 }; // Aligment: 3 // Size: 80 class CMotionClip { public: // MPropertySuppressField CUtlVector< CSmartPtr< CAnimTagSpan > > m_tagSpans; // 0x20 // MPropertyFriendlyName "Sequence" // MPropertyAttributeChoiceName "Sequence" CUtlString m_sequenceName; // 0x38 // MPropertyFriendlyName "Loop" bool m_bLoop; // 0x40 }; // Aligment: 3 // Size: 72 class CMotionClipGroup { public: // MPropertyHideField CUtlVector< CSmartPtr< CMotionClip > > m_clips; // 0x20 // MPropertyFriendlyName "Name" CUtlString m_name; // 0x38 // MPropertyFriendlyName "Enable On Tag" // MPropertyAttributeChoiceName "Tag" AnimTagID m_tagID; // 0x40 }; // Aligment: 1 // Size: 40 class CMotionMetricBase { public: // MPropertyHideField float m_flWeight; // 0x20 }; // Aligment: 1 // Size: 64 class CFootCycleMetric : public CMotionMetricBase { public: // MPropertyFriendlyName "Foot" // MPropertyAttributeChoiceName "Foot" // MPropertyAutoExpandGroup CUtlVector< CUtlString > m_feet; // 0x28 }; // Aligment: 0 // Size: 40 class CCurrentVelocityMetric : public CMotionMetricBase { public: // }; // Aligment: 4 // Size: 80 class CPathMetric : public CMotionMetricBase { public: // MPropertyFriendlyName "Distance" float m_flDistance; // 0x28 // MPropertyFriendlyName "Samples Times" CUtlVector< float32 > m_pathSamples; // 0x30 // MPropertyFriendlyName "Extrapolate Movement" // MPropertyAttrChangeCallback bool m_bExtrapolateMovement; // 0x48 // MPropertyFriendlyName "Min Extrapolation Speed" // MPropertyAttrStateCallback float m_flMinExtrapolationSpeed; // 0x4c }; // Aligment: 1 // Size: 48 class CFutureFacingMetric : public CMotionMetricBase { public: // MPropertyFriendlyName "Distance" float m_flDistance; // 0x28 }; // Aligment: 5 // Size: 56 class CFutureVelocityMetric : public CMotionMetricBase { public: // MPropertyFriendlyName "Distance" float m_flDistance; // 0x28 // MPropertyFriendlyName "Stopping Distance" float m_flStoppingDistance; // 0x2c // MPropertyFriendlyName "Ignore Direction" bool m_bIgnoreDirection; // 0x30 // MPropertyFriendlyName "Auto-Calculate target speed" // MPropertyAttrChangeCallback bool m_bAutoTargetSpeed; // 0x31 // MPropertyFriendlyName "Target Speed" // MPropertyAttrStateCallback float m_flManualTargetSpeed; // 0x34 }; // Aligment: 1 // Size: 48 class CBonePositionMetric : public CMotionMetricBase { public: // MPropertyFriendlyName "Bone" // MPropertyAttributeChoiceName "Bone" CUtlString m_boneName; // 0x28 }; // Aligment: 1 // Size: 48 class CBoneVelocityMetric : public CMotionMetricBase { public: // MPropertyFriendlyName "Bone" // MPropertyAttributeChoiceName "Bone" CUtlString m_boneName; // 0x28 }; // Aligment: 7 // Size: 72 class CDistanceRemainingMetric : public CMotionMetricBase { public: // MPropertyFriendlyName "Maximum Tracked Distance" float m_flMaxDistance; // 0x28 // MPropertyFriendlyName "Filter By Fixed Distance" // MPropertyAttrChangeCallback bool m_bFilterFixedMinDistance; // 0x2c // MPropertyFriendlyName "Min Distance" // MPropertyAttrStateCallback float m_flMinDistance; // 0x30 // MPropertyFriendlyName "Filter By Goal Distance" // MPropertyAttrChangeCallback bool m_bFilterGoalDistance; // 0x34 // MPropertyFriendlyName "Goal Filter Start Distance" // MPropertyAttrStateCallback float m_flStartGoalFilterDistance; // 0x38 // MPropertyFriendlyName "Filter By Goal Overshoot" // MPropertyAttrChangeCallback // MPropertyAttrStateCallback bool m_bFilterGoalOvershoot; // 0x3c // MPropertyFriendlyName "Max Goal Overshoot Scale" // MPropertyAttrStateCallback float m_flMaxGoalOvershootScale; // 0x40 }; // Aligment: 2 // Size: 72 class CStepsRemainingMetric : public CMotionMetricBase { public: // MPropertyFriendlyName "Feet" // MPropertyAttributeChoiceName "Foot" // MPropertyAutoExpandGroup CUtlVector< CUtlString > m_feet; // 0x28 // MPropertyFriendlyName "Min Steps Remaining" float m_flMinStepsRemaining; // 0x40 }; // Aligment: 4 // Size: 56 class CTimeRemainingMetric : public CMotionMetricBase { public: // MPropertyFriendlyName "Match Time Remaining" // MPropertyGroupName // MPropertyAttrChangeCallback bool m_bMatchByTimeRemaining; // 0x28 // MPropertyFriendlyName "Max Time Remaining" // MPropertyAttrStateCallback float m_flMaxTimeRemaining; // 0x2c // MPropertyFriendlyName "Filter By Time Remaining" // MPropertyAttrChangeCallback bool m_bFilterByTimeRemaining; // 0x30 // MPropertyFriendlyName "Min Time Remaining" // MPropertyAttrStateCallback float m_flMinTimeRemaining; // 0x34 }; // Aligment: 2 // Size: 72 class CFootPositionMetric : public CMotionMetricBase { public: // MPropertyFriendlyName "Foot" // MPropertyAttributeChoiceName "Foot" // MPropertyAutoExpandGroup CUtlVector< CUtlString > m_feet; // 0x28 // MPropertyFriendlyName "Ignore Slope" bool m_bIgnoreSlope; // 0x40 }; // Aligment: 3 // Size: 96 class CAnimReplayFrame { public: CUtlBinaryBlock m_instanceData; // 0x10 CTransform m_localToWorldTransform; // 0x30 float m_timeStamp; // 0x50 }; // Aligment: 5 // Size: 112 class CAnimGraphDebugReplay { public: CAnimationGraph* m_pAnimGraph; // 0x40 CUtlVector< CSmartPtr< CAnimReplayFrame > > m_frameList; // 0x48 int32_t m_startIndex; // 0x60 int32_t m_writeIndex; // 0x64 int32_t m_frameCount; // 0x68 };