mirror of
https://github.com/neverlosecc/source2sdk.git
synced 2025-04-20 21:28:12 +00:00
28.02.2025
This commit is contained in:
parent
192be5f23a
commit
ad75880902
40
sdk/.vscode/settings.json
vendored
Normal file
40
sdk/.vscode/settings.json
vendored
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
{
|
||||||
|
"files.associations": {
|
||||||
|
"compare": "cpp",
|
||||||
|
"concepts": "cpp",
|
||||||
|
"cstddef": "cpp",
|
||||||
|
"cstdint": "cpp",
|
||||||
|
"cstdio": "cpp",
|
||||||
|
"cstdlib": "cpp",
|
||||||
|
"cstring": "cpp",
|
||||||
|
"cwchar": "cpp",
|
||||||
|
"exception": "cpp",
|
||||||
|
"initializer_list": "cpp",
|
||||||
|
"iosfwd": "cpp",
|
||||||
|
"limits": "cpp",
|
||||||
|
"new": "cpp",
|
||||||
|
"tuple": "cpp",
|
||||||
|
"type_traits": "cpp",
|
||||||
|
"utility": "cpp",
|
||||||
|
"xmemory": "cpp",
|
||||||
|
"xstring": "cpp",
|
||||||
|
"xtr1common": "cpp",
|
||||||
|
"xutility": "cpp",
|
||||||
|
"array": "cpp",
|
||||||
|
"atomic": "cpp",
|
||||||
|
"bit": "cpp",
|
||||||
|
"ctime": "cpp",
|
||||||
|
"format": "cpp",
|
||||||
|
"map": "cpp",
|
||||||
|
"memory": "cpp",
|
||||||
|
"mutex": "cpp",
|
||||||
|
"ratio": "cpp",
|
||||||
|
"stdexcept": "cpp",
|
||||||
|
"stop_token": "cpp",
|
||||||
|
"system_error": "cpp",
|
||||||
|
"thread": "cpp",
|
||||||
|
"typeinfo": "cpp",
|
||||||
|
"vector": "cpp",
|
||||||
|
"xtree": "cpp"
|
||||||
|
}
|
||||||
|
}
|
@ -17,7 +17,7 @@ namespace source2sdk::animationsystem
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: true
|
// Standard-layout class: true
|
||||||
// Size: 0x130
|
// Size: 0x148
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -46,7 +46,10 @@ namespace source2sdk::animationsystem
|
|||||||
// m_szScripts has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_szScripts has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<CBufferString> m_szScripts;
|
// CUtlVector<CBufferString> m_szScripts;
|
||||||
char m_szScripts[0x18]; // 0x110
|
char m_szScripts[0x18]; // 0x110
|
||||||
[[maybe_unused]] std::uint8_t pad_0x128[0x8];
|
// m_AdditionalExtRefs has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
|
// CUtlVector<CStrongHandleVoid> m_AdditionalExtRefs;
|
||||||
|
char m_AdditionalExtRefs[0x18]; // 0x128
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x140[0x8];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
@ -57,6 +60,7 @@ namespace source2sdk::animationsystem
|
|||||||
static_assert(offsetof(CAnimationGroup, m_directHSeqGroup_Handle) == 0x90);
|
static_assert(offsetof(CAnimationGroup, m_directHSeqGroup_Handle) == 0x90);
|
||||||
static_assert(offsetof(CAnimationGroup, m_decodeKey) == 0x98);
|
static_assert(offsetof(CAnimationGroup, m_decodeKey) == 0x98);
|
||||||
static_assert(offsetof(CAnimationGroup, m_szScripts) == 0x110);
|
static_assert(offsetof(CAnimationGroup, m_szScripts) == 0x110);
|
||||||
|
static_assert(offsetof(CAnimationGroup, m_AdditionalExtRefs) == 0x128);
|
||||||
|
|
||||||
static_assert(sizeof(CAnimationGroup) == 0x130);
|
static_assert(sizeof(CAnimationGroup) == 0x148);
|
||||||
};
|
};
|
||||||
|
@ -0,0 +1,35 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "source2sdk/modellib/AttachmentHandle_t.hpp"
|
||||||
|
#include "source2sdk/source2gen.hpp"
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animationsystem
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animationsystem
|
||||||
|
{
|
||||||
|
// Registered alignment: 0x4
|
||||||
|
// Alignment: 0x4
|
||||||
|
// Standard-layout class: true
|
||||||
|
// Size: 0x8
|
||||||
|
// Has Trivial Destructor
|
||||||
|
//
|
||||||
|
// static metadata: MGetKV3ClassDefaults
|
||||||
|
#pragma pack(push, 1)
|
||||||
|
class FollowAttachmentData
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
int32_t m_boneIndex; // 0x0
|
||||||
|
modellib::AttachmentHandle_t m_attachmentHandle; // 0x4
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x05[0x3];
|
||||||
|
};
|
||||||
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
static_assert(offsetof(FollowAttachmentData, m_boneIndex) == 0x0);
|
||||||
|
static_assert(offsetof(FollowAttachmentData, m_attachmentHandle) == 0x4);
|
||||||
|
|
||||||
|
static_assert(sizeof(FollowAttachmentData) == 0x8);
|
||||||
|
};
|
@ -22,9 +22,6 @@ namespace source2sdk::animationsystem
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
int32_t m_Value; // 0x0
|
int32_t m_Value; // 0x0
|
||||||
|
|
||||||
// Static fields:
|
|
||||||
static bool &Get_IS_TYPESAFE_INTEGER() {return *reinterpret_cast<bool*>(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("HSequence")->GetStaticFields()[0]->m_pInstance);};
|
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
@ -8,12 +8,11 @@
|
|||||||
|
|
||||||
namespace source2sdk::animationsystem
|
namespace source2sdk::animationsystem
|
||||||
{
|
{
|
||||||
// Enumerator count: 2
|
// Enumerator count: 1
|
||||||
// Alignment: 4
|
// Alignment: 4
|
||||||
// Size: 0x4
|
// Size: 0x4
|
||||||
enum class RagdollPoseControl : std::uint32_t
|
enum class RagdollPoseControl : std::uint32_t
|
||||||
{
|
{
|
||||||
Absolute = 0x0,
|
Absolute = 0x0,
|
||||||
Relative = 0x1,
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -18,7 +18,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x10
|
// Registered alignment: 0x10
|
||||||
// Alignment: 0x10
|
// Alignment: 0x10
|
||||||
// Standard-layout class: true
|
// Standard-layout class: true
|
||||||
// Size: 0xe0
|
// Size: 0xf0
|
||||||
// Has Trivial Destructor
|
// Has Trivial Destructor
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -28,34 +28,35 @@ namespace source2sdk::animgraphlib
|
|||||||
public:
|
public:
|
||||||
modellib::CAnimAttachment m_attachment; // 0x0
|
modellib::CAnimAttachment m_attachment; // 0x0
|
||||||
animgraphlib::CAnimInputDamping m_damping; // 0x80
|
animgraphlib::CAnimInputDamping m_damping; // 0x80
|
||||||
animgraphlib::CPoseHandle m_poseCacheHandles[10]; // 0x90
|
animgraphlib::CPoseHandle m_poseCacheHandles[10]; // 0x98
|
||||||
animgraphlib::AimMatrixBlendMode m_eBlendMode; // 0xb8
|
animgraphlib::AimMatrixBlendMode m_eBlendMode; // 0xc0
|
||||||
float m_flMaxYawAngle; // 0xbc
|
float m_flMaxYawAngle; // 0xc4
|
||||||
float m_flMaxPitchAngle; // 0xc0
|
float m_flMaxPitchAngle; // 0xc8
|
||||||
int32_t m_nSequenceMaxFrame; // 0xc4
|
int32_t m_nSequenceMaxFrame; // 0xcc
|
||||||
int32_t m_nBoneMaskIndex; // 0xc8
|
int32_t m_nBoneMaskIndex; // 0xd0
|
||||||
bool m_bTargetIsPosition; // 0xcc
|
bool m_bTargetIsPosition; // 0xd4
|
||||||
bool m_bUseBiasAndClamp; // 0xcd
|
bool m_bUseBiasAndClamp; // 0xd5
|
||||||
[[maybe_unused]] std::uint8_t pad_0xce[0x2]; // 0xce
|
[[maybe_unused]] std::uint8_t pad_0xd6[0x2]; // 0xd6
|
||||||
float m_flBiasAndClampYawOffset; // 0xd0
|
float m_flBiasAndClampYawOffset; // 0xd8
|
||||||
float m_flBiasAndClampPitchOffset; // 0xd4
|
float m_flBiasAndClampPitchOffset; // 0xdc
|
||||||
animgraphlib::CBlendCurve m_biasAndClampBlendCurve; // 0xd8
|
animgraphlib::CBlendCurve m_biasAndClampBlendCurve; // 0xe0
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0xe8[0x8];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_attachment) == 0x0);
|
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_attachment) == 0x0);
|
||||||
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_damping) == 0x80);
|
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_damping) == 0x80);
|
||||||
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_poseCacheHandles) == 0x90);
|
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_poseCacheHandles) == 0x98);
|
||||||
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_eBlendMode) == 0xb8);
|
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_eBlendMode) == 0xc0);
|
||||||
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_flMaxYawAngle) == 0xbc);
|
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_flMaxYawAngle) == 0xc4);
|
||||||
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_flMaxPitchAngle) == 0xc0);
|
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_flMaxPitchAngle) == 0xc8);
|
||||||
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_nSequenceMaxFrame) == 0xc4);
|
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_nSequenceMaxFrame) == 0xcc);
|
||||||
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_nBoneMaskIndex) == 0xc8);
|
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_nBoneMaskIndex) == 0xd0);
|
||||||
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_bTargetIsPosition) == 0xcc);
|
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_bTargetIsPosition) == 0xd4);
|
||||||
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_bUseBiasAndClamp) == 0xcd);
|
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_bUseBiasAndClamp) == 0xd5);
|
||||||
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_flBiasAndClampYawOffset) == 0xd0);
|
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_flBiasAndClampYawOffset) == 0xd8);
|
||||||
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_flBiasAndClampPitchOffset) == 0xd4);
|
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_flBiasAndClampPitchOffset) == 0xdc);
|
||||||
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_biasAndClampBlendCurve) == 0xd8);
|
static_assert(offsetof(AimMatrixOpFixedSettings_t, m_biasAndClampBlendCurve) == 0xe0);
|
||||||
|
|
||||||
static_assert(sizeof(AimMatrixOpFixedSettings_t) == 0xe0);
|
static_assert(sizeof(AimMatrixOpFixedSettings_t) == 0xf0);
|
||||||
};
|
};
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
namespace source2sdk::animgraphlib
|
namespace source2sdk::animgraphlib
|
||||||
{
|
{
|
||||||
// Enumerator count: 36
|
// Enumerator count: 37
|
||||||
// Alignment: 4
|
// Alignment: 4
|
||||||
// Size: 0x4
|
// Size: 0x4
|
||||||
enum class AnimValueSource : std::uint32_t
|
enum class AnimValueSource : std::uint32_t
|
||||||
@ -25,65 +25,67 @@ namespace source2sdk::animgraphlib
|
|||||||
FacingHeading = 0x4,
|
FacingHeading = 0x4,
|
||||||
// MPropertyFriendlyName "Look Heading"
|
// MPropertyFriendlyName "Look Heading"
|
||||||
LookHeading = 0x5,
|
LookHeading = 0x5,
|
||||||
|
// MPropertyFriendlyName "Look Heading Normalized"
|
||||||
|
LookHeadingNormalized = 0x6,
|
||||||
// MPropertyFriendlyName "Look Pitch"
|
// MPropertyFriendlyName "Look Pitch"
|
||||||
LookPitch = 0x6,
|
LookPitch = 0x7,
|
||||||
// MPropertyFriendlyName "Look Distance"
|
// MPropertyFriendlyName "Look Distance"
|
||||||
LookDistance = 0x7,
|
LookDistance = 0x8,
|
||||||
// MPropertyFriendlyName "Parameter"
|
// MPropertyFriendlyName "Parameter"
|
||||||
Parameter = 0x8,
|
Parameter = 0x9,
|
||||||
// MPropertyFriendlyName "Waypoint Heading"
|
// MPropertyFriendlyName "Waypoint Heading"
|
||||||
WayPointHeading = 0x9,
|
WayPointHeading = 0xa,
|
||||||
// MPropertyFriendlyName "Waypoint Distance"
|
// MPropertyFriendlyName "Waypoint Distance"
|
||||||
WayPointDistance = 0xa,
|
WayPointDistance = 0xb,
|
||||||
// MPropertyFriendlyName "Boundary Radius"
|
// MPropertyFriendlyName "Boundary Radius"
|
||||||
BoundaryRadius = 0xb,
|
BoundaryRadius = 0xc,
|
||||||
// MPropertyFriendlyName "Target Move Heading"
|
// MPropertyFriendlyName "Target Move Heading"
|
||||||
TargetMoveHeading = 0xc,
|
TargetMoveHeading = 0xd,
|
||||||
// MPropertyFriendlyName "Target Move Speed"
|
// MPropertyFriendlyName "Target Move Speed"
|
||||||
TargetMoveSpeed = 0xd,
|
TargetMoveSpeed = 0xe,
|
||||||
// MPropertyFriendlyName "Acceleration Heading"
|
// MPropertyFriendlyName "Acceleration Heading"
|
||||||
AccelerationHeading = 0xe,
|
AccelerationHeading = 0xf,
|
||||||
// MPropertyFriendlyName "Acceleration Speed"
|
// MPropertyFriendlyName "Acceleration Speed"
|
||||||
AccelerationSpeed = 0xf,
|
AccelerationSpeed = 0x10,
|
||||||
// MPropertyFriendlyName "Slope Heading"
|
// MPropertyFriendlyName "Slope Heading"
|
||||||
SlopeHeading = 0x10,
|
SlopeHeading = 0x11,
|
||||||
// MPropertyFriendlyName "Slope Angle"
|
// MPropertyFriendlyName "Slope Angle"
|
||||||
SlopeAngle = 0x11,
|
SlopeAngle = 0x12,
|
||||||
// MPropertyFriendlyName "Slope Pitch"
|
// MPropertyFriendlyName "Slope Pitch"
|
||||||
SlopePitch = 0x12,
|
SlopePitch = 0x13,
|
||||||
// MPropertyFriendlyName "Slope Yaw"
|
// MPropertyFriendlyName "Slope Yaw"
|
||||||
SlopeYaw = 0x13,
|
SlopeYaw = 0x14,
|
||||||
// MPropertyFriendlyName "Goal Distance"
|
// MPropertyFriendlyName "Goal Distance"
|
||||||
GoalDistance = 0x14,
|
GoalDistance = 0x15,
|
||||||
// MPropertyFriendlyName "Acceleration Left-Right"
|
// MPropertyFriendlyName "Acceleration Left-Right"
|
||||||
AccelerationLeftRight = 0x15,
|
AccelerationLeftRight = 0x16,
|
||||||
// MPropertyFriendlyName "Acceleration Forward-Back"
|
// MPropertyFriendlyName "Acceleration Forward-Back"
|
||||||
AccelerationFrontBack = 0x16,
|
AccelerationFrontBack = 0x17,
|
||||||
// MPropertyFriendlyName "Root Motion Speed"
|
// MPropertyFriendlyName "Root Motion Speed"
|
||||||
RootMotionSpeed = 0x17,
|
RootMotionSpeed = 0x18,
|
||||||
// MPropertyFriendlyName "Root Motion Turn Speed"
|
// MPropertyFriendlyName "Root Motion Turn Speed"
|
||||||
RootMotionTurnSpeed = 0x18,
|
RootMotionTurnSpeed = 0x19,
|
||||||
// MPropertyFriendlyName "Move Heading Relative to Look Heading"
|
// MPropertyFriendlyName "Move Heading Relative to Look Heading"
|
||||||
MoveHeadingRelativeToLookHeading = 0x19,
|
MoveHeadingRelativeToLookHeading = 0x1a,
|
||||||
// MPropertyFriendlyName "Max Move Speed"
|
// MPropertyFriendlyName "Max Move Speed"
|
||||||
MaxMoveSpeed = 0x1a,
|
MaxMoveSpeed = 0x1b,
|
||||||
// MPropertyFriendlyName "Finger Curl - Thumb"
|
// MPropertyFriendlyName "Finger Curl - Thumb"
|
||||||
FingerCurl_Thumb = 0x1b,
|
FingerCurl_Thumb = 0x1c,
|
||||||
// MPropertyFriendlyName "Finger Curl - Index"
|
// MPropertyFriendlyName "Finger Curl - Index"
|
||||||
FingerCurl_Index = 0x1c,
|
FingerCurl_Index = 0x1d,
|
||||||
// MPropertyFriendlyName "Finger Curl - Middle"
|
// MPropertyFriendlyName "Finger Curl - Middle"
|
||||||
FingerCurl_Middle = 0x1d,
|
FingerCurl_Middle = 0x1e,
|
||||||
// MPropertyFriendlyName "Finger Curl - Ring"
|
// MPropertyFriendlyName "Finger Curl - Ring"
|
||||||
FingerCurl_Ring = 0x1e,
|
FingerCurl_Ring = 0x1f,
|
||||||
// MPropertyFriendlyName "Finger Curl - Pinky"
|
// MPropertyFriendlyName "Finger Curl - Pinky"
|
||||||
FingerCurl_Pinky = 0x1f,
|
FingerCurl_Pinky = 0x20,
|
||||||
// MPropertyFriendlyName "Finger Splay - Thumb:Index"
|
// MPropertyFriendlyName "Finger Splay - Thumb:Index"
|
||||||
FingerSplay_Thumb_Index = 0x20,
|
FingerSplay_Thumb_Index = 0x21,
|
||||||
// MPropertyFriendlyName "Finger Splay - Index:Middle"
|
// MPropertyFriendlyName "Finger Splay - Index:Middle"
|
||||||
FingerSplay_Index_Middle = 0x21,
|
FingerSplay_Index_Middle = 0x22,
|
||||||
// MPropertyFriendlyName "Finger Splay - Middle:Ring"
|
// MPropertyFriendlyName "Finger Splay - Middle:Ring"
|
||||||
FingerSplay_Middle_Ring = 0x22,
|
FingerSplay_Middle_Ring = 0x23,
|
||||||
// MPropertyFriendlyName "Finger Splay - Ring:Pinky"
|
// MPropertyFriendlyName "Finger Splay - Ring:Pinky"
|
||||||
FingerSplay_Ring_Pinky = 0x23,
|
FingerSplay_Ring_Pinky = 0x24,
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -15,7 +15,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x98
|
// Size: 0xa0
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -23,16 +23,16 @@ namespace source2sdk::animgraphlib
|
|||||||
class CAddUpdateNode : public animgraphlib::CBinaryUpdateNode
|
class CAddUpdateNode : public animgraphlib::CBinaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x88[0x4]; // 0x88
|
[[maybe_unused]] std::uint8_t pad_0x90[0x4]; // 0x90
|
||||||
animgraphlib::BinaryNodeChildOption m_footMotionTiming; // 0x8c
|
animgraphlib::BinaryNodeChildOption m_footMotionTiming; // 0x94
|
||||||
bool m_bApplyToFootMotion; // 0x90
|
bool m_bApplyToFootMotion; // 0x98
|
||||||
bool m_bApplyChannelsSeparately; // 0x91
|
bool m_bApplyChannelsSeparately; // 0x99
|
||||||
bool m_bUseModelSpace; // 0x92
|
bool m_bUseModelSpace; // 0x9a
|
||||||
bool m_bApplyScale; // 0x93
|
bool m_bApplyScale; // 0x9b
|
||||||
[[maybe_unused]] std::uint8_t pad_0x94[0x4];
|
[[maybe_unused]] std::uint8_t pad_0x9c[0x4];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CAddUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CAddUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CAddUpdateNode) == 0x98);
|
static_assert(sizeof(CAddUpdateNode) == 0xa0);
|
||||||
};
|
};
|
||||||
|
@ -16,7 +16,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xb8
|
// Size: 0xc0
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -24,21 +24,21 @@ namespace source2sdk::animgraphlib
|
|||||||
class CAimCameraUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CAimCameraUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
animgraphlib::CAnimParamHandle m_hParameterPosition; // 0x68
|
animgraphlib::CAnimParamHandle m_hParameterPosition; // 0x70
|
||||||
animgraphlib::CAnimParamHandle m_hParameterOrientation; // 0x6a
|
animgraphlib::CAnimParamHandle m_hParameterOrientation; // 0x72
|
||||||
animgraphlib::CAnimParamHandle m_hParameterSpineRotationWeight; // 0x6c
|
animgraphlib::CAnimParamHandle m_hParameterSpineRotationWeight; // 0x74
|
||||||
animgraphlib::CAnimParamHandle m_hParameterPelvisOffset; // 0x6e
|
animgraphlib::CAnimParamHandle m_hParameterPelvisOffset; // 0x76
|
||||||
animgraphlib::CAnimParamHandle m_hParameterUseIK; // 0x70
|
animgraphlib::CAnimParamHandle m_hParameterUseIK; // 0x78
|
||||||
animgraphlib::CAnimParamHandle m_hParameterCameraOnly; // 0x72
|
animgraphlib::CAnimParamHandle m_hParameterCameraOnly; // 0x7a
|
||||||
animgraphlib::CAnimParamHandle m_hParameterWeaponDepenetrationDistance; // 0x74
|
animgraphlib::CAnimParamHandle m_hParameterWeaponDepenetrationDistance; // 0x7c
|
||||||
animgraphlib::CAnimParamHandle m_hParameterWeaponDepenetrationDelta; // 0x76
|
animgraphlib::CAnimParamHandle m_hParameterWeaponDepenetrationDelta; // 0x7e
|
||||||
animgraphlib::CAnimParamHandle m_hParameterCameraClearanceDistance; // 0x78
|
animgraphlib::CAnimParamHandle m_hParameterCameraClearanceDistance; // 0x80
|
||||||
[[maybe_unused]] std::uint8_t pad_0x7a[0x6]; // 0x7a
|
[[maybe_unused]] std::uint8_t pad_0x82[0x6]; // 0x82
|
||||||
animgraphlib::AimCameraOpFixedSettings_t m_opFixedSettings; // 0x80
|
animgraphlib::AimCameraOpFixedSettings_t m_opFixedSettings; // 0x88
|
||||||
[[maybe_unused]] std::uint8_t pad_0xb0[0x8];
|
[[maybe_unused]] std::uint8_t pad_0xb8[0x8];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CAimCameraUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CAimCameraUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CAimCameraUpdateNode) == 0xb8);
|
static_assert(sizeof(CAimCameraUpdateNode) == 0xc0);
|
||||||
};
|
};
|
||||||
|
@ -18,7 +18,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x10
|
// Registered alignment: 0x10
|
||||||
// Alignment: 0x10
|
// Alignment: 0x10
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x170
|
// Size: 0x180
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -26,19 +26,18 @@ namespace source2sdk::animgraphlib
|
|||||||
class CAimMatrixUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CAimMatrixUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x68[0x8]; // 0x68
|
|
||||||
animgraphlib::AimMatrixOpFixedSettings_t m_opFixedSettings; // 0x70
|
animgraphlib::AimMatrixOpFixedSettings_t m_opFixedSettings; // 0x70
|
||||||
[[maybe_unused]] std::uint8_t pad_0x150[0x8]; // 0x150
|
[[maybe_unused]] std::uint8_t pad_0x160[0x8]; // 0x160
|
||||||
animgraphlib::AnimVectorSource m_target; // 0x158
|
animgraphlib::AnimVectorSource m_target; // 0x168
|
||||||
animgraphlib::CAnimParamHandle m_paramIndex; // 0x15c
|
animgraphlib::CAnimParamHandle m_paramIndex; // 0x16c
|
||||||
[[maybe_unused]] std::uint8_t pad_0x15e[0x2]; // 0x15e
|
[[maybe_unused]] std::uint8_t pad_0x16e[0x2]; // 0x16e
|
||||||
animationsystem::HSequence m_hSequence; // 0x160
|
animationsystem::HSequence m_hSequence; // 0x170
|
||||||
bool m_bResetChild; // 0x164
|
bool m_bResetChild; // 0x174
|
||||||
bool m_bLockWhenWaning; // 0x165
|
bool m_bLockWhenWaning; // 0x175
|
||||||
[[maybe_unused]] std::uint8_t pad_0x166[0xa];
|
[[maybe_unused]] std::uint8_t pad_0x176[0xa];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CAimMatrixUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CAimMatrixUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CAimMatrixUpdateNode) == 0x170);
|
static_assert(sizeof(CAimMatrixUpdateNode) == 0x180);
|
||||||
};
|
};
|
||||||
|
@ -14,7 +14,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: true
|
// Standard-layout class: true
|
||||||
// Size: 0x10
|
// Size: 0x18
|
||||||
// Has VTable
|
// Has VTable
|
||||||
// Has Trivial Destructor
|
// Has Trivial Destructor
|
||||||
//
|
//
|
||||||
@ -29,11 +29,15 @@ namespace source2sdk::animgraphlib
|
|||||||
animgraphlib::DampingSpeedFunction m_speedFunction; // 0x8
|
animgraphlib::DampingSpeedFunction m_speedFunction; // 0x8
|
||||||
// metadata: MPropertyFriendlyName "Speed Scale"
|
// metadata: MPropertyFriendlyName "Speed Scale"
|
||||||
float m_fSpeedScale; // 0xc
|
float m_fSpeedScale; // 0xc
|
||||||
|
// metadata: MPropertyFriendlyName "Falling Speed Scale"
|
||||||
|
float m_fFallingSpeedScale; // 0x10
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x14[0x4];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(offsetof(CAnimInputDamping, m_speedFunction) == 0x8);
|
static_assert(offsetof(CAnimInputDamping, m_speedFunction) == 0x8);
|
||||||
static_assert(offsetof(CAnimInputDamping, m_fSpeedScale) == 0xc);
|
static_assert(offsetof(CAnimInputDamping, m_fSpeedScale) == 0xc);
|
||||||
|
static_assert(offsetof(CAnimInputDamping, m_fFallingSpeedScale) == 0x10);
|
||||||
|
|
||||||
static_assert(sizeof(CAnimInputDamping) == 0x10);
|
static_assert(sizeof(CAnimInputDamping) == 0x18);
|
||||||
};
|
};
|
||||||
|
@ -16,7 +16,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: unknown
|
// Registered alignment: unknown
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x88
|
// Size: 0x90
|
||||||
// Has VTable
|
// Has VTable
|
||||||
// Is Abstract
|
// Is Abstract
|
||||||
//
|
//
|
||||||
@ -25,16 +25,17 @@ namespace source2sdk::animgraphlib
|
|||||||
class CBinaryUpdateNode : public animgraphlib::CAnimUpdateNodeBase
|
class CBinaryUpdateNode : public animgraphlib::CAnimUpdateNodeBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
animgraphlib::CAnimUpdateNodeRef m_pChild1; // 0x58
|
[[maybe_unused]] std::uint8_t pad_0x58[0x8]; // 0x58
|
||||||
animgraphlib::CAnimUpdateNodeRef m_pChild2; // 0x68
|
animgraphlib::CAnimUpdateNodeRef m_pChild1; // 0x60
|
||||||
animgraphlib::BinaryNodeTiming m_timingBehavior; // 0x78
|
animgraphlib::CAnimUpdateNodeRef m_pChild2; // 0x70
|
||||||
float m_flTimingBlend; // 0x7c
|
animgraphlib::BinaryNodeTiming m_timingBehavior; // 0x80
|
||||||
bool m_bResetChild1; // 0x80
|
float m_flTimingBlend; // 0x84
|
||||||
bool m_bResetChild2; // 0x81
|
bool m_bResetChild1; // 0x88
|
||||||
[[maybe_unused]] std::uint8_t pad_0x82[0x6];
|
bool m_bResetChild2; // 0x89
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x8a[0x6];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CBinaryUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CBinaryUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CBinaryUpdateNode) == 0x88);
|
static_assert(sizeof(CBinaryUpdateNode) == 0x90);
|
||||||
};
|
};
|
||||||
|
@ -21,7 +21,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xf0
|
// Size: 0xf8
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -41,22 +41,22 @@ namespace source2sdk::animgraphlib
|
|||||||
// CUtlVector<int32_t> m_nodeItemIndices;
|
// CUtlVector<int32_t> m_nodeItemIndices;
|
||||||
char m_nodeItemIndices[0x18]; // 0xa8
|
char m_nodeItemIndices[0x18]; // 0xa8
|
||||||
animgraphlib::CAnimInputDamping m_damping; // 0xc0
|
animgraphlib::CAnimInputDamping m_damping; // 0xc0
|
||||||
animgraphlib::AnimValueSource m_blendSourceX; // 0xd0
|
animgraphlib::AnimValueSource m_blendSourceX; // 0xd8
|
||||||
animgraphlib::CAnimParamHandle m_paramX; // 0xd4
|
animgraphlib::CAnimParamHandle m_paramX; // 0xdc
|
||||||
[[maybe_unused]] std::uint8_t pad_0xd6[0x2]; // 0xd6
|
|
||||||
animgraphlib::AnimValueSource m_blendSourceY; // 0xd8
|
|
||||||
animgraphlib::CAnimParamHandle m_paramY; // 0xdc
|
|
||||||
[[maybe_unused]] std::uint8_t pad_0xde[0x2]; // 0xde
|
[[maybe_unused]] std::uint8_t pad_0xde[0x2]; // 0xde
|
||||||
animgraphlib::Blend2DMode m_eBlendMode; // 0xe0
|
animgraphlib::AnimValueSource m_blendSourceY; // 0xe0
|
||||||
float m_playbackSpeed; // 0xe4
|
animgraphlib::CAnimParamHandle m_paramY; // 0xe4
|
||||||
bool m_bLoop; // 0xe8
|
[[maybe_unused]] std::uint8_t pad_0xe6[0x2]; // 0xe6
|
||||||
bool m_bLockBlendOnReset; // 0xe9
|
animgraphlib::Blend2DMode m_eBlendMode; // 0xe8
|
||||||
bool m_bLockWhenWaning; // 0xea
|
float m_playbackSpeed; // 0xec
|
||||||
bool m_bAnimEventsAndTagsOnMostWeightedOnly; // 0xeb
|
bool m_bLoop; // 0xf0
|
||||||
[[maybe_unused]] std::uint8_t pad_0xec[0x4];
|
bool m_bLockBlendOnReset; // 0xf1
|
||||||
|
bool m_bLockWhenWaning; // 0xf2
|
||||||
|
bool m_bAnimEventsAndTagsOnMostWeightedOnly; // 0xf3
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0xf4[0x4];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CBlend2DUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CBlend2DUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CBlend2DUpdateNode) == 0xf0);
|
static_assert(sizeof(CBlend2DUpdateNode) == 0xf8);
|
||||||
};
|
};
|
||||||
|
@ -19,7 +19,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xd0
|
// Size: 0xe0
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -42,14 +42,16 @@ namespace source2sdk::animgraphlib
|
|||||||
animgraphlib::CAnimParamHandle m_paramIndex; // 0xb0
|
animgraphlib::CAnimParamHandle m_paramIndex; // 0xb0
|
||||||
[[maybe_unused]] std::uint8_t pad_0xb2[0x6]; // 0xb2
|
[[maybe_unused]] std::uint8_t pad_0xb2[0x6]; // 0xb2
|
||||||
animgraphlib::CAnimInputDamping m_damping; // 0xb8
|
animgraphlib::CAnimInputDamping m_damping; // 0xb8
|
||||||
animgraphlib::BlendKeyType m_blendKeyType; // 0xc8
|
animgraphlib::BlendKeyType m_blendKeyType; // 0xd0
|
||||||
bool m_bLockBlendOnReset; // 0xcc
|
bool m_bLockBlendOnReset; // 0xd4
|
||||||
bool m_bSyncCycles; // 0xcd
|
bool m_bSyncCycles; // 0xd5
|
||||||
bool m_bLoop; // 0xce
|
bool m_bLoop; // 0xd6
|
||||||
bool m_bLockWhenWaning; // 0xcf
|
bool m_bLockWhenWaning; // 0xd7
|
||||||
|
bool m_bIsAngle; // 0xd8
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0xd9[0x7];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CBlendUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CBlendUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CBlendUpdateNode) == 0xd0);
|
static_assert(sizeof(CBlendUpdateNode) == 0xe0);
|
||||||
};
|
};
|
||||||
|
@ -18,7 +18,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xa8
|
// Size: 0xb0
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -26,19 +26,19 @@ namespace source2sdk::animgraphlib
|
|||||||
class CBoneMaskUpdateNode : public animgraphlib::CBinaryUpdateNode
|
class CBoneMaskUpdateNode : public animgraphlib::CBinaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x88[0x4]; // 0x88
|
[[maybe_unused]] std::uint8_t pad_0x90[0x4]; // 0x90
|
||||||
int32_t m_nWeightListIndex; // 0x8c
|
int32_t m_nWeightListIndex; // 0x94
|
||||||
float m_flRootMotionBlend; // 0x90
|
float m_flRootMotionBlend; // 0x98
|
||||||
animgraphlib::BoneMaskBlendSpace m_blendSpace; // 0x94
|
animgraphlib::BoneMaskBlendSpace m_blendSpace; // 0x9c
|
||||||
animgraphlib::BinaryNodeChildOption m_footMotionTiming; // 0x98
|
animgraphlib::BinaryNodeChildOption m_footMotionTiming; // 0xa0
|
||||||
bool m_bUseBlendScale; // 0x9c
|
bool m_bUseBlendScale; // 0xa4
|
||||||
[[maybe_unused]] std::uint8_t pad_0x9d[0x3]; // 0x9d
|
[[maybe_unused]] std::uint8_t pad_0xa5[0x3]; // 0xa5
|
||||||
animgraphlib::AnimValueSource m_blendValueSource; // 0xa0
|
animgraphlib::AnimValueSource m_blendValueSource; // 0xa8
|
||||||
animgraphlib::CAnimParamHandle m_hBlendParameter; // 0xa4
|
animgraphlib::CAnimParamHandle m_hBlendParameter; // 0xac
|
||||||
[[maybe_unused]] std::uint8_t pad_0xa6[0x2];
|
[[maybe_unused]] std::uint8_t pad_0xae[0x2];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CBoneMaskUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CBoneMaskUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CBoneMaskUpdateNode) == 0xa8);
|
static_assert(sizeof(CBoneMaskUpdateNode) == 0xb0);
|
||||||
};
|
};
|
||||||
|
@ -14,7 +14,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x70
|
// Size: 0x78
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -22,9 +22,9 @@ namespace source2sdk::animgraphlib
|
|||||||
class CChoreoUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CChoreoUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x68[0x8];
|
[[maybe_unused]] std::uint8_t pad_0x70[0x8];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(sizeof(CChoreoUpdateNode) == 0x70);
|
static_assert(sizeof(CChoreoUpdateNode) == 0x78);
|
||||||
};
|
};
|
||||||
|
@ -16,7 +16,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x70
|
// Size: 0x78
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -24,12 +24,12 @@ namespace source2sdk::animgraphlib
|
|||||||
class CCycleControlUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CCycleControlUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
animgraphlib::AnimValueSource m_valueSource; // 0x68
|
animgraphlib::AnimValueSource m_valueSource; // 0x70
|
||||||
animgraphlib::CAnimParamHandle m_paramIndex; // 0x6c
|
animgraphlib::CAnimParamHandle m_paramIndex; // 0x74
|
||||||
[[maybe_unused]] std::uint8_t pad_0x6e[0x2];
|
[[maybe_unused]] std::uint8_t pad_0x76[0x2];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CCycleControlUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CCycleControlUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CCycleControlUpdateNode) == 0x70);
|
static_assert(sizeof(CCycleControlUpdateNode) == 0x78);
|
||||||
};
|
};
|
||||||
|
@ -15,7 +15,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: true
|
// Standard-layout class: true
|
||||||
// Size: 0x20
|
// Size: 0x28
|
||||||
// Has Trivial Destructor
|
// Has Trivial Destructor
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -24,16 +24,16 @@ namespace source2sdk::animgraphlib
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
animgraphlib::CAnimInputDamping m_damping; // 0x0
|
animgraphlib::CAnimInputDamping m_damping; // 0x0
|
||||||
[[maybe_unused]] std::uint8_t pad_0x10[0x8]; // 0x10
|
[[maybe_unused]] std::uint8_t pad_0x18[0x8]; // 0x18
|
||||||
animgraphlib::CAnimParamHandle m_hParamIn; // 0x18
|
animgraphlib::CAnimParamHandle m_hParamIn; // 0x20
|
||||||
animgraphlib::CAnimParamHandle m_hParamOut; // 0x1a
|
animgraphlib::CAnimParamHandle m_hParamOut; // 0x22
|
||||||
[[maybe_unused]] std::uint8_t pad_0x1c[0x4];
|
[[maybe_unused]] std::uint8_t pad_0x24[0x4];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(offsetof(CDampedValueUpdateItem, m_damping) == 0x0);
|
static_assert(offsetof(CDampedValueUpdateItem, m_damping) == 0x0);
|
||||||
static_assert(offsetof(CDampedValueUpdateItem, m_hParamIn) == 0x18);
|
static_assert(offsetof(CDampedValueUpdateItem, m_hParamIn) == 0x20);
|
||||||
static_assert(offsetof(CDampedValueUpdateItem, m_hParamOut) == 0x1a);
|
static_assert(offsetof(CDampedValueUpdateItem, m_hParamOut) == 0x22);
|
||||||
|
|
||||||
static_assert(sizeof(CDampedValueUpdateItem) == 0x20);
|
static_assert(sizeof(CDampedValueUpdateItem) == 0x28);
|
||||||
};
|
};
|
||||||
|
@ -15,7 +15,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x88
|
// Size: 0x90
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -23,16 +23,16 @@ namespace source2sdk::animgraphlib
|
|||||||
class CDirectPlaybackUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CDirectPlaybackUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x68[0x4]; // 0x68
|
[[maybe_unused]] std::uint8_t pad_0x70[0x4]; // 0x70
|
||||||
bool m_bFinishEarly; // 0x6c
|
bool m_bFinishEarly; // 0x74
|
||||||
bool m_bResetOnFinish; // 0x6d
|
bool m_bResetOnFinish; // 0x75
|
||||||
[[maybe_unused]] std::uint8_t pad_0x6e[0x2]; // 0x6e
|
[[maybe_unused]] std::uint8_t pad_0x76[0x2]; // 0x76
|
||||||
// m_allTags has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_allTags has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::CDirectPlaybackTagData> m_allTags;
|
// CUtlVector<animgraphlib::CDirectPlaybackTagData> m_allTags;
|
||||||
char m_allTags[0x18]; // 0x70
|
char m_allTags[0x18]; // 0x78
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CDirectPlaybackUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CDirectPlaybackUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CDirectPlaybackUpdateNode) == 0x88);
|
static_assert(sizeof(CDirectPlaybackUpdateNode) == 0x90);
|
||||||
};
|
};
|
||||||
|
@ -18,7 +18,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xa8
|
// Size: 0xb0
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -30,17 +30,17 @@ namespace source2sdk::animgraphlib
|
|||||||
animationsystem::HSequence m_hSequences[8]; // 0x5c
|
animationsystem::HSequence m_hSequences[8]; // 0x5c
|
||||||
[[maybe_unused]] std::uint8_t pad_0x7c[0x4]; // 0x7c
|
[[maybe_unused]] std::uint8_t pad_0x7c[0x4]; // 0x7c
|
||||||
animgraphlib::CAnimInputDamping m_damping; // 0x80
|
animgraphlib::CAnimInputDamping m_damping; // 0x80
|
||||||
animgraphlib::AnimValueSource m_blendValueSource; // 0x90
|
animgraphlib::AnimValueSource m_blendValueSource; // 0x98
|
||||||
animgraphlib::CAnimParamHandle m_paramIndex; // 0x94
|
animgraphlib::CAnimParamHandle m_paramIndex; // 0x9c
|
||||||
[[maybe_unused]] std::uint8_t pad_0x96[0x2]; // 0x96
|
[[maybe_unused]] std::uint8_t pad_0x9e[0x2]; // 0x9e
|
||||||
float m_playbackSpeed; // 0x98
|
float m_playbackSpeed; // 0xa0
|
||||||
float m_duration; // 0x9c
|
float m_duration; // 0xa4
|
||||||
bool m_bLoop; // 0xa0
|
bool m_bLoop; // 0xa8
|
||||||
bool m_bLockBlendOnReset; // 0xa1
|
bool m_bLockBlendOnReset; // 0xa9
|
||||||
[[maybe_unused]] std::uint8_t pad_0xa2[0x6];
|
[[maybe_unused]] std::uint8_t pad_0xaa[0x6];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CDirectionalBlendUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CDirectionalBlendUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CDirectionalBlendUpdateNode) == 0xa8);
|
static_assert(sizeof(CDirectionalBlendUpdateNode) == 0xb0);
|
||||||
};
|
};
|
||||||
|
@ -23,7 +23,6 @@ namespace source2sdk::animgraphlib
|
|||||||
class CFollowAttachmentUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CFollowAttachmentUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x68[0x8]; // 0x68
|
|
||||||
animgraphlib::FollowAttachmentSettings_t m_opFixedData; // 0x70
|
animgraphlib::FollowAttachmentSettings_t m_opFixedData; // 0x70
|
||||||
[[maybe_unused]] std::uint8_t pad_0x100[0x10];
|
[[maybe_unused]] std::uint8_t pad_0x100[0x10];
|
||||||
};
|
};
|
||||||
|
@ -17,7 +17,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xa8
|
// Size: 0xb8
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -25,27 +25,27 @@ namespace source2sdk::animgraphlib
|
|||||||
class CFollowPathUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CFollowPathUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x68[0x4]; // 0x68
|
[[maybe_unused]] std::uint8_t pad_0x70[0x4]; // 0x70
|
||||||
float m_flBlendOutTime; // 0x6c
|
float m_flBlendOutTime; // 0x74
|
||||||
bool m_bBlockNonPathMovement; // 0x70
|
bool m_bBlockNonPathMovement; // 0x78
|
||||||
bool m_bStopFeetAtGoal; // 0x71
|
bool m_bStopFeetAtGoal; // 0x79
|
||||||
bool m_bScaleSpeed; // 0x72
|
bool m_bScaleSpeed; // 0x7a
|
||||||
[[maybe_unused]] std::uint8_t pad_0x73[0x1]; // 0x73
|
[[maybe_unused]] std::uint8_t pad_0x7b[0x1]; // 0x7b
|
||||||
float m_flScale; // 0x74
|
float m_flScale; // 0x7c
|
||||||
float m_flMinAngle; // 0x78
|
float m_flMinAngle; // 0x80
|
||||||
float m_flMaxAngle; // 0x7c
|
float m_flMaxAngle; // 0x84
|
||||||
float m_flSpeedScaleBlending; // 0x80
|
float m_flSpeedScaleBlending; // 0x88
|
||||||
[[maybe_unused]] std::uint8_t pad_0x84[0x4]; // 0x84
|
[[maybe_unused]] std::uint8_t pad_0x8c[0x4]; // 0x8c
|
||||||
animgraphlib::CAnimInputDamping m_turnDamping; // 0x88
|
animgraphlib::CAnimInputDamping m_turnDamping; // 0x90
|
||||||
animgraphlib::AnimValueSource m_facingTarget; // 0x98
|
animgraphlib::AnimValueSource m_facingTarget; // 0xa8
|
||||||
animgraphlib::CAnimParamHandle m_hParam; // 0x9c
|
animgraphlib::CAnimParamHandle m_hParam; // 0xac
|
||||||
[[maybe_unused]] std::uint8_t pad_0x9e[0x2]; // 0x9e
|
[[maybe_unused]] std::uint8_t pad_0xae[0x2]; // 0xae
|
||||||
float m_flTurnToFaceOffset; // 0xa0
|
float m_flTurnToFaceOffset; // 0xb0
|
||||||
bool m_bTurnToFace; // 0xa4
|
bool m_bTurnToFace; // 0xb4
|
||||||
[[maybe_unused]] std::uint8_t pad_0xa5[0x3];
|
[[maybe_unused]] std::uint8_t pad_0xb5[0x3];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CFollowPathUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CFollowPathUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CFollowPathUpdateNode) == 0xa8);
|
static_assert(sizeof(CFollowPathUpdateNode) == 0xb8);
|
||||||
};
|
};
|
||||||
|
@ -16,7 +16,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x88
|
// Size: 0x90
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -24,14 +24,14 @@ namespace source2sdk::animgraphlib
|
|||||||
class CFollowTargetUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CFollowTargetUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
animgraphlib::FollowTargetOpFixedSettings_t m_opFixedData; // 0x68
|
animgraphlib::FollowTargetOpFixedSettings_t m_opFixedData; // 0x70
|
||||||
[[maybe_unused]] std::uint8_t pad_0x78[0x8]; // 0x78
|
[[maybe_unused]] std::uint8_t pad_0x80[0x8]; // 0x80
|
||||||
animgraphlib::CAnimParamHandle m_hParameterPosition; // 0x80
|
animgraphlib::CAnimParamHandle m_hParameterPosition; // 0x88
|
||||||
animgraphlib::CAnimParamHandle m_hParameterOrientation; // 0x82
|
animgraphlib::CAnimParamHandle m_hParameterOrientation; // 0x8a
|
||||||
[[maybe_unused]] std::uint8_t pad_0x84[0x4];
|
[[maybe_unused]] std::uint8_t pad_0x8c[0x4];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CFollowTargetUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CFollowTargetUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CFollowTargetUpdateNode) == 0x88);
|
static_assert(sizeof(CFollowTargetUpdateNode) == 0x90);
|
||||||
};
|
};
|
||||||
|
@ -17,7 +17,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xa8
|
// Size: 0xb0
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -25,23 +25,23 @@ namespace source2sdk::animgraphlib
|
|||||||
class CFootAdjustmentUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CFootAdjustmentUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x68[0x8]; // 0x68
|
[[maybe_unused]] std::uint8_t pad_0x70[0x8]; // 0x70
|
||||||
// m_clips has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_clips has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animationsystem::HSequence> m_clips;
|
// CUtlVector<animationsystem::HSequence> m_clips;
|
||||||
char m_clips[0x18]; // 0x70
|
char m_clips[0x18]; // 0x78
|
||||||
animgraphlib::CPoseHandle m_hBasePoseCacheHandle; // 0x88
|
animgraphlib::CPoseHandle m_hBasePoseCacheHandle; // 0x90
|
||||||
animgraphlib::CAnimParamHandle m_facingTarget; // 0x8c
|
animgraphlib::CAnimParamHandle m_facingTarget; // 0x94
|
||||||
[[maybe_unused]] std::uint8_t pad_0x8e[0x2]; // 0x8e
|
[[maybe_unused]] std::uint8_t pad_0x96[0x2]; // 0x96
|
||||||
float m_flTurnTimeMin; // 0x90
|
float m_flTurnTimeMin; // 0x98
|
||||||
float m_flTurnTimeMax; // 0x94
|
float m_flTurnTimeMax; // 0x9c
|
||||||
float m_flStepHeightMax; // 0x98
|
float m_flStepHeightMax; // 0xa0
|
||||||
float m_flStepHeightMaxAngle; // 0x9c
|
float m_flStepHeightMaxAngle; // 0xa4
|
||||||
bool m_bResetChild; // 0xa0
|
bool m_bResetChild; // 0xa8
|
||||||
bool m_bAnimationDriven; // 0xa1
|
bool m_bAnimationDriven; // 0xa9
|
||||||
[[maybe_unused]] std::uint8_t pad_0xa2[0x6];
|
[[maybe_unused]] std::uint8_t pad_0xaa[0x6];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CFootAdjustmentUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CFootAdjustmentUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CFootAdjustmentUpdateNode) == 0xa8);
|
static_assert(sizeof(CFootAdjustmentUpdateNode) == 0xb0);
|
||||||
};
|
};
|
||||||
|
@ -17,7 +17,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x138
|
// Size: 0x158
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -25,33 +25,33 @@ namespace source2sdk::animgraphlib
|
|||||||
class CFootLockUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CFootLockUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
animgraphlib::FootLockPoseOpFixedSettings m_opFixedSettings; // 0x68
|
animgraphlib::FootLockPoseOpFixedSettings m_opFixedSettings; // 0x70
|
||||||
[[maybe_unused]] std::uint8_t pad_0xc8[0x8]; // 0xc8
|
[[maybe_unused]] std::uint8_t pad_0xd8[0x8]; // 0xd8
|
||||||
// m_footSettings has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_footSettings has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::FootFixedSettings> m_footSettings;
|
// CUtlVector<animgraphlib::FootFixedSettings> m_footSettings;
|
||||||
char m_footSettings[0x18]; // 0xd0
|
char m_footSettings[0x18]; // 0xe0
|
||||||
animgraphlib::CAnimInputDamping m_hipShiftDamping; // 0xe8
|
animgraphlib::CAnimInputDamping m_hipShiftDamping; // 0xf8
|
||||||
animgraphlib::CAnimInputDamping m_rootHeightDamping; // 0xf8
|
animgraphlib::CAnimInputDamping m_rootHeightDamping; // 0x110
|
||||||
float m_flStrideCurveScale; // 0x108
|
float m_flStrideCurveScale; // 0x128
|
||||||
float m_flStrideCurveLimitScale; // 0x10c
|
float m_flStrideCurveLimitScale; // 0x12c
|
||||||
float m_flStepHeightIncreaseScale; // 0x110
|
float m_flStepHeightIncreaseScale; // 0x130
|
||||||
float m_flStepHeightDecreaseScale; // 0x114
|
float m_flStepHeightDecreaseScale; // 0x134
|
||||||
float m_flHipShiftScale; // 0x118
|
float m_flHipShiftScale; // 0x138
|
||||||
float m_flBlendTime; // 0x11c
|
float m_flBlendTime; // 0x13c
|
||||||
float m_flMaxRootHeightOffset; // 0x120
|
float m_flMaxRootHeightOffset; // 0x140
|
||||||
float m_flMinRootHeightOffset; // 0x124
|
float m_flMinRootHeightOffset; // 0x144
|
||||||
float m_flTiltPlanePitchSpringStrength; // 0x128
|
float m_flTiltPlanePitchSpringStrength; // 0x148
|
||||||
float m_flTiltPlaneRollSpringStrength; // 0x12c
|
float m_flTiltPlaneRollSpringStrength; // 0x14c
|
||||||
bool m_bApplyFootRotationLimits; // 0x130
|
bool m_bApplyFootRotationLimits; // 0x150
|
||||||
bool m_bApplyHipShift; // 0x131
|
bool m_bApplyHipShift; // 0x151
|
||||||
bool m_bModulateStepHeight; // 0x132
|
bool m_bModulateStepHeight; // 0x152
|
||||||
bool m_bResetChild; // 0x133
|
bool m_bResetChild; // 0x153
|
||||||
bool m_bEnableVerticalCurvedPaths; // 0x134
|
bool m_bEnableVerticalCurvedPaths; // 0x154
|
||||||
bool m_bEnableRootHeightDamping; // 0x135
|
bool m_bEnableRootHeightDamping; // 0x155
|
||||||
[[maybe_unused]] std::uint8_t pad_0x136[0x2];
|
[[maybe_unused]] std::uint8_t pad_0x156[0x2];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CFootLockUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CFootLockUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CFootLockUpdateNode) == 0x138);
|
static_assert(sizeof(CFootLockUpdateNode) == 0x158);
|
||||||
};
|
};
|
||||||
|
@ -17,7 +17,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xc8
|
// Size: 0xd0
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -25,18 +25,18 @@ namespace source2sdk::animgraphlib
|
|||||||
class CFootPinningUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CFootPinningUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x68[0x8]; // 0x68
|
[[maybe_unused]] std::uint8_t pad_0x70[0x8]; // 0x70
|
||||||
animgraphlib::FootPinningPoseOpFixedData_t m_poseOpFixedData; // 0x70
|
animgraphlib::FootPinningPoseOpFixedData_t m_poseOpFixedData; // 0x78
|
||||||
animgraphlib::FootPinningTimingSource m_eTimingSource; // 0xa0
|
animgraphlib::FootPinningTimingSource m_eTimingSource; // 0xa8
|
||||||
[[maybe_unused]] std::uint8_t pad_0xa4[0x4]; // 0xa4
|
[[maybe_unused]] std::uint8_t pad_0xac[0x4]; // 0xac
|
||||||
// m_params has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_params has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::CAnimParamHandle> m_params;
|
// CUtlVector<animgraphlib::CAnimParamHandle> m_params;
|
||||||
char m_params[0x18]; // 0xa8
|
char m_params[0x18]; // 0xb0
|
||||||
bool m_bResetChild; // 0xc0
|
bool m_bResetChild; // 0xc8
|
||||||
[[maybe_unused]] std::uint8_t pad_0xc1[0x7];
|
[[maybe_unused]] std::uint8_t pad_0xc9[0x7];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CFootPinningUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CFootPinningUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CFootPinningUpdateNode) == 0xc8);
|
static_assert(sizeof(CFootPinningUpdateNode) == 0xd0);
|
||||||
};
|
};
|
||||||
|
@ -15,7 +15,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x88
|
// Size: 0x90
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -25,12 +25,12 @@ namespace source2sdk::animgraphlib
|
|||||||
public:
|
public:
|
||||||
// m_triggers has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_triggers has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::FootStepTrigger> m_triggers;
|
// CUtlVector<animgraphlib::FootStepTrigger> m_triggers;
|
||||||
char m_triggers[0x18]; // 0x68
|
char m_triggers[0x18]; // 0x70
|
||||||
[[maybe_unused]] std::uint8_t pad_0x80[0x4]; // 0x80
|
[[maybe_unused]] std::uint8_t pad_0x88[0x4]; // 0x88
|
||||||
float m_flTolerance; // 0x84
|
float m_flTolerance; // 0x8c
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CFootStepTriggerUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CFootStepTriggerUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CFootStepTriggerUpdateNode) == 0x88);
|
static_assert(sizeof(CFootStepTriggerUpdateNode) == 0x90);
|
||||||
};
|
};
|
||||||
|
@ -16,7 +16,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xc8
|
// Size: 0xd0
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -24,20 +24,20 @@ namespace source2sdk::animgraphlib
|
|||||||
class CHitReactUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CHitReactUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
animgraphlib::HitReactFixedSettings_t m_opFixedSettings; // 0x68
|
animgraphlib::HitReactFixedSettings_t m_opFixedSettings; // 0x70
|
||||||
[[maybe_unused]] std::uint8_t pad_0xac[0x8]; // 0xac
|
[[maybe_unused]] std::uint8_t pad_0xb4[0x8]; // 0xb4
|
||||||
animgraphlib::CAnimParamHandle m_triggerParam; // 0xb4
|
animgraphlib::CAnimParamHandle m_triggerParam; // 0xbc
|
||||||
animgraphlib::CAnimParamHandle m_hitBoneParam; // 0xb6
|
animgraphlib::CAnimParamHandle m_hitBoneParam; // 0xbe
|
||||||
animgraphlib::CAnimParamHandle m_hitOffsetParam; // 0xb8
|
animgraphlib::CAnimParamHandle m_hitOffsetParam; // 0xc0
|
||||||
animgraphlib::CAnimParamHandle m_hitDirectionParam; // 0xba
|
animgraphlib::CAnimParamHandle m_hitDirectionParam; // 0xc2
|
||||||
animgraphlib::CAnimParamHandle m_hitStrengthParam; // 0xbc
|
animgraphlib::CAnimParamHandle m_hitStrengthParam; // 0xc4
|
||||||
[[maybe_unused]] std::uint8_t pad_0xbe[0x2]; // 0xbe
|
[[maybe_unused]] std::uint8_t pad_0xc6[0x2]; // 0xc6
|
||||||
float m_flMinDelayBetweenHits; // 0xc0
|
float m_flMinDelayBetweenHits; // 0xc8
|
||||||
bool m_bResetChild; // 0xc4
|
bool m_bResetChild; // 0xcc
|
||||||
[[maybe_unused]] std::uint8_t pad_0xc5[0x3];
|
[[maybe_unused]] std::uint8_t pad_0xcd[0x3];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CHitReactUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CHitReactUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CHitReactUpdateNode) == 0xc8);
|
static_assert(sizeof(CHitReactUpdateNode) == 0xd0);
|
||||||
};
|
};
|
||||||
|
@ -15,7 +15,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x88
|
// Size: 0x90
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -23,11 +23,11 @@ namespace source2sdk::animgraphlib
|
|||||||
class CJiggleBoneUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CJiggleBoneUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
animgraphlib::JiggleBoneSettingsList_t m_opFixedData; // 0x68
|
animgraphlib::JiggleBoneSettingsList_t m_opFixedData; // 0x70
|
||||||
[[maybe_unused]] std::uint8_t pad_0x80[0x8];
|
[[maybe_unused]] std::uint8_t pad_0x88[0x8];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CJiggleBoneUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CJiggleBoneUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CJiggleBoneUpdateNode) == 0x88);
|
static_assert(sizeof(CJiggleBoneUpdateNode) == 0x90);
|
||||||
};
|
};
|
||||||
|
@ -16,7 +16,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xd0
|
// Size: 0xd8
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -24,19 +24,19 @@ namespace source2sdk::animgraphlib
|
|||||||
class CJumpHelperUpdateNode : public animgraphlib::CSequenceUpdateNode
|
class CJumpHelperUpdateNode : public animgraphlib::CSequenceUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
animgraphlib::CAnimParamHandle m_hTargetParam; // 0xa8
|
animgraphlib::CAnimParamHandle m_hTargetParam; // 0xb0
|
||||||
[[maybe_unused]] std::uint8_t pad_0xaa[0x2]; // 0xaa
|
[[maybe_unused]] std::uint8_t pad_0xb2[0x2]; // 0xb2
|
||||||
Vector m_flOriginalJumpMovement; // 0xac
|
Vector m_flOriginalJumpMovement; // 0xb4
|
||||||
float m_flOriginalJumpDuration; // 0xb8
|
float m_flOriginalJumpDuration; // 0xc0
|
||||||
float m_flJumpStartCycle; // 0xbc
|
float m_flJumpStartCycle; // 0xc4
|
||||||
float m_flJumpEndCycle; // 0xc0
|
float m_flJumpEndCycle; // 0xc8
|
||||||
animgraphlib::JumpCorrectionMethod m_eCorrectionMethod; // 0xc4
|
animgraphlib::JumpCorrectionMethod m_eCorrectionMethod; // 0xcc
|
||||||
bool m_bTranslationAxis[3]; // 0xc8
|
bool m_bTranslationAxis[3]; // 0xd0
|
||||||
bool m_bScaleSpeed; // 0xcb
|
bool m_bScaleSpeed; // 0xd3
|
||||||
[[maybe_unused]] std::uint8_t pad_0xcc[0x4];
|
[[maybe_unused]] std::uint8_t pad_0xd4[0x4];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CJumpHelperUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CJumpHelperUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CJumpHelperUpdateNode) == 0xd0);
|
static_assert(sizeof(CJumpHelperUpdateNode) == 0xd8);
|
||||||
};
|
};
|
||||||
|
@ -19,7 +19,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xe8
|
// Size: 0xf0
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -32,18 +32,18 @@ namespace source2sdk::animgraphlib
|
|||||||
animgraphlib::CPoseHandle m_poses[9]; // 0x80
|
animgraphlib::CPoseHandle m_poses[9]; // 0x80
|
||||||
[[maybe_unused]] std::uint8_t pad_0xa4[0x4]; // 0xa4
|
[[maybe_unused]] std::uint8_t pad_0xa4[0x4]; // 0xa4
|
||||||
animgraphlib::CAnimInputDamping m_damping; // 0xa8
|
animgraphlib::CAnimInputDamping m_damping; // 0xa8
|
||||||
animgraphlib::AnimVectorSource m_blendSource; // 0xb8
|
animgraphlib::AnimVectorSource m_blendSource; // 0xc0
|
||||||
animgraphlib::CAnimParamHandle m_paramIndex; // 0xbc
|
animgraphlib::CAnimParamHandle m_paramIndex; // 0xc4
|
||||||
[[maybe_unused]] std::uint8_t pad_0xbe[0x2]; // 0xbe
|
[[maybe_unused]] std::uint8_t pad_0xc6[0x2]; // 0xc6
|
||||||
Vector m_verticalAxis; // 0xc0
|
Vector m_verticalAxis; // 0xc8
|
||||||
Vector m_horizontalAxis; // 0xcc
|
Vector m_horizontalAxis; // 0xd4
|
||||||
animationsystem::HSequence m_hSequence; // 0xd8
|
animationsystem::HSequence m_hSequence; // 0xe0
|
||||||
float m_flMaxValue; // 0xdc
|
float m_flMaxValue; // 0xe4
|
||||||
int32_t m_nSequenceMaxFrame; // 0xe0
|
int32_t m_nSequenceMaxFrame; // 0xe8
|
||||||
[[maybe_unused]] std::uint8_t pad_0xe4[0x4];
|
[[maybe_unused]] std::uint8_t pad_0xec[0x4];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CLeanMatrixUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CLeanMatrixUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CLeanMatrixUpdateNode) == 0xe8);
|
static_assert(sizeof(CLeanMatrixUpdateNode) == 0xf0);
|
||||||
};
|
};
|
||||||
|
@ -17,7 +17,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x10
|
// Registered alignment: 0x10
|
||||||
// Alignment: 0x10
|
// Alignment: 0x10
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x150
|
// Size: 0x160
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -25,18 +25,17 @@ namespace source2sdk::animgraphlib
|
|||||||
class CLookAtUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CLookAtUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x68[0x8]; // 0x68
|
|
||||||
animgraphlib::LookAtOpFixedSettings_t m_opFixedSettings; // 0x70
|
animgraphlib::LookAtOpFixedSettings_t m_opFixedSettings; // 0x70
|
||||||
[[maybe_unused]] std::uint8_t pad_0x130[0x8]; // 0x130
|
[[maybe_unused]] std::uint8_t pad_0x140[0x8]; // 0x140
|
||||||
animgraphlib::AnimVectorSource m_target; // 0x138
|
animgraphlib::AnimVectorSource m_target; // 0x148
|
||||||
animgraphlib::CAnimParamHandle m_paramIndex; // 0x13c
|
animgraphlib::CAnimParamHandle m_paramIndex; // 0x14c
|
||||||
animgraphlib::CAnimParamHandle m_weightParamIndex; // 0x13e
|
animgraphlib::CAnimParamHandle m_weightParamIndex; // 0x14e
|
||||||
bool m_bResetChild; // 0x140
|
bool m_bResetChild; // 0x150
|
||||||
bool m_bLockWhenWaning; // 0x141
|
bool m_bLockWhenWaning; // 0x151
|
||||||
[[maybe_unused]] std::uint8_t pad_0x142[0xe];
|
[[maybe_unused]] std::uint8_t pad_0x152[0xe];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CLookAtUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CLookAtUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CLookAtUpdateNode) == 0x150);
|
static_assert(sizeof(CLookAtUpdateNode) == 0x160);
|
||||||
};
|
};
|
||||||
|
@ -25,14 +25,15 @@ namespace source2sdk::animgraphlib
|
|||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x30[0x4]; // 0x30
|
[[maybe_unused]] std::uint8_t pad_0x30[0x4]; // 0x30
|
||||||
animgraphlib::CAnimParamHandle m_hLookHeading; // 0x34
|
animgraphlib::CAnimParamHandle m_hLookHeading; // 0x34
|
||||||
animgraphlib::CAnimParamHandle m_hLookHeadingVelocity; // 0x36
|
animgraphlib::CAnimParamHandle m_hLookHeadingNormalized; // 0x36
|
||||||
animgraphlib::CAnimParamHandle m_hLookPitch; // 0x38
|
animgraphlib::CAnimParamHandle m_hLookHeadingVelocity; // 0x38
|
||||||
animgraphlib::CAnimParamHandle m_hLookDistance; // 0x3a
|
animgraphlib::CAnimParamHandle m_hLookPitch; // 0x3a
|
||||||
animgraphlib::CAnimParamHandle m_hLookDirection; // 0x3c
|
animgraphlib::CAnimParamHandle m_hLookDistance; // 0x3c
|
||||||
animgraphlib::CAnimParamHandle m_hLookTarget; // 0x3e
|
animgraphlib::CAnimParamHandle m_hLookDirection; // 0x3e
|
||||||
animgraphlib::CAnimParamHandle m_hLookTargetWorldSpace; // 0x40
|
animgraphlib::CAnimParamHandle m_hLookTarget; // 0x40
|
||||||
bool m_bNetworkLookTarget; // 0x42
|
animgraphlib::CAnimParamHandle m_hLookTargetWorldSpace; // 0x42
|
||||||
[[maybe_unused]] std::uint8_t pad_0x43[0x5];
|
bool m_bNetworkLookTarget; // 0x44
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x45[0x3];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x140
|
// Size: 0x148
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -54,15 +54,15 @@ namespace source2sdk::animgraphlib
|
|||||||
float m_flGoalAssistTolerance; // 0x110
|
float m_flGoalAssistTolerance; // 0x110
|
||||||
[[maybe_unused]] std::uint8_t pad_0x114[0x4]; // 0x114
|
[[maybe_unused]] std::uint8_t pad_0x114[0x4]; // 0x114
|
||||||
animgraphlib::CAnimInputDamping m_distanceScale_Damping; // 0x118
|
animgraphlib::CAnimInputDamping m_distanceScale_Damping; // 0x118
|
||||||
float m_flDistanceScale_OuterRadius; // 0x128
|
float m_flDistanceScale_OuterRadius; // 0x130
|
||||||
float m_flDistanceScale_InnerRadius; // 0x12c
|
float m_flDistanceScale_InnerRadius; // 0x134
|
||||||
float m_flDistanceScale_MaxScale; // 0x130
|
float m_flDistanceScale_MaxScale; // 0x138
|
||||||
float m_flDistanceScale_MinScale; // 0x134
|
float m_flDistanceScale_MinScale; // 0x13c
|
||||||
bool m_bEnableDistanceScaling; // 0x138
|
bool m_bEnableDistanceScaling; // 0x140
|
||||||
[[maybe_unused]] std::uint8_t pad_0x139[0x7];
|
[[maybe_unused]] std::uint8_t pad_0x141[0x7];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CMotionMatchingUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CMotionMatchingUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CMotionMatchingUpdateNode) == 0x140);
|
static_assert(sizeof(CMotionMatchingUpdateNode) == 0x148);
|
||||||
};
|
};
|
||||||
|
@ -17,7 +17,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xa8
|
// Size: 0xb8
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -29,17 +29,17 @@ namespace source2sdk::animgraphlib
|
|||||||
// CUtlVector<CSmartPtr<animgraphlib::CAnimMotorUpdaterBase>> m_motors;
|
// CUtlVector<CSmartPtr<animgraphlib::CAnimMotorUpdaterBase>> m_motors;
|
||||||
char m_motors[0x18]; // 0x30
|
char m_motors[0x18]; // 0x30
|
||||||
animgraphlib::CAnimInputDamping m_facingDamping; // 0x48
|
animgraphlib::CAnimInputDamping m_facingDamping; // 0x48
|
||||||
[[maybe_unused]] std::uint8_t pad_0x58[0x8]; // 0x58
|
[[maybe_unused]] std::uint8_t pad_0x60[0x8]; // 0x60
|
||||||
int32_t m_nDefaultMotorIndex; // 0x60
|
int32_t m_nDefaultMotorIndex; // 0x68
|
||||||
float m_flDefaultRunSpeed; // 0x64
|
float m_flDefaultRunSpeed; // 0x6c
|
||||||
bool m_bMoveVarsDisabled; // 0x68
|
bool m_bMoveVarsDisabled; // 0x70
|
||||||
bool m_bNetworkPath; // 0x69
|
bool m_bNetworkPath; // 0x71
|
||||||
bool m_bNetworkFacing; // 0x6a
|
bool m_bNetworkFacing; // 0x72
|
||||||
animgraphlib::CAnimParamHandle m_paramHandles[30]; // 0x6b
|
animgraphlib::CAnimParamHandle m_paramHandles[34]; // 0x73
|
||||||
[[maybe_unused]] std::uint8_t pad_0xa7[0x1];
|
[[maybe_unused]] std::uint8_t pad_0xb7[0x1];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CMovementComponentUpdater because it is not a standard-layout class
|
// Cannot assert offsets of fields in CMovementComponentUpdater because it is not a standard-layout class
|
||||||
static_assert(sizeof(CMovementComponentUpdater) == 0xa8);
|
static_assert(sizeof(CMovementComponentUpdater) == 0xb8);
|
||||||
};
|
};
|
||||||
|
@ -17,7 +17,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xa0
|
// Size: 0xb0
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -25,24 +25,24 @@ namespace source2sdk::animgraphlib
|
|||||||
class CMoverUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CMoverUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x68[0x8]; // 0x68
|
[[maybe_unused]] std::uint8_t pad_0x70[0x8]; // 0x70
|
||||||
animgraphlib::CAnimInputDamping m_damping; // 0x70
|
animgraphlib::CAnimInputDamping m_damping; // 0x78
|
||||||
animgraphlib::AnimValueSource m_facingTarget; // 0x80
|
animgraphlib::AnimValueSource m_facingTarget; // 0x90
|
||||||
animgraphlib::CAnimParamHandle m_hMoveVecParam; // 0x84
|
animgraphlib::CAnimParamHandle m_hMoveVecParam; // 0x94
|
||||||
animgraphlib::CAnimParamHandle m_hMoveHeadingParam; // 0x86
|
animgraphlib::CAnimParamHandle m_hMoveHeadingParam; // 0x96
|
||||||
animgraphlib::CAnimParamHandle m_hTurnToFaceParam; // 0x88
|
animgraphlib::CAnimParamHandle m_hTurnToFaceParam; // 0x98
|
||||||
[[maybe_unused]] std::uint8_t pad_0x8a[0x2]; // 0x8a
|
[[maybe_unused]] std::uint8_t pad_0x9a[0x2]; // 0x9a
|
||||||
float m_flTurnToFaceOffset; // 0x8c
|
float m_flTurnToFaceOffset; // 0x9c
|
||||||
float m_flTurnToFaceLimit; // 0x90
|
float m_flTurnToFaceLimit; // 0xa0
|
||||||
bool m_bAdditive; // 0x94
|
bool m_bAdditive; // 0xa4
|
||||||
bool m_bApplyMovement; // 0x95
|
bool m_bApplyMovement; // 0xa5
|
||||||
bool m_bOrientMovement; // 0x96
|
bool m_bOrientMovement; // 0xa6
|
||||||
bool m_bApplyRotation; // 0x97
|
bool m_bApplyRotation; // 0xa7
|
||||||
bool m_bLimitOnly; // 0x98
|
bool m_bLimitOnly; // 0xa8
|
||||||
[[maybe_unused]] std::uint8_t pad_0x99[0x7];
|
[[maybe_unused]] std::uint8_t pad_0xa9[0x7];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CMoverUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CMoverUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CMoverUpdateNode) == 0xa0);
|
static_assert(sizeof(CMoverUpdateNode) == 0xb0);
|
||||||
};
|
};
|
||||||
|
@ -0,0 +1,54 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "source2sdk/animgraphlib/AnimValueSource.hpp"
|
||||||
|
#include "source2sdk/animgraphlib/CAnimInputDamping.hpp"
|
||||||
|
#include "source2sdk/animgraphlib/CAnimParamHandle.hpp"
|
||||||
|
#include "source2sdk/animgraphlib/CUnaryUpdateNode.hpp"
|
||||||
|
#include "source2sdk/animgraphlib/OrientationWarpMode_t.hpp"
|
||||||
|
#include "source2sdk/animgraphlib/OrientationWarpRootMotionSource_t.hpp"
|
||||||
|
#include "source2sdk/animgraphlib/OrientationWarpTargetOffsetMode_t.hpp"
|
||||||
|
#include "source2sdk/source2gen.hpp"
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animgraphlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animgraphlib
|
||||||
|
{
|
||||||
|
// Registered alignment: 0x8
|
||||||
|
// Alignment: 0x8
|
||||||
|
// Standard-layout class: false
|
||||||
|
// Size: 0xc0
|
||||||
|
// Has VTable
|
||||||
|
//
|
||||||
|
// static metadata: MGetKV3ClassDefaults
|
||||||
|
#pragma pack(push, 1)
|
||||||
|
class COrientationWarpUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x70[0x4]; // 0x70
|
||||||
|
animgraphlib::OrientationWarpMode_t m_eMode; // 0x74
|
||||||
|
animgraphlib::CAnimParamHandle m_hTargetParam; // 0x78
|
||||||
|
animgraphlib::CAnimParamHandle m_hTargetPositionParam; // 0x7a
|
||||||
|
animgraphlib::CAnimParamHandle m_hFallbackTargetPositionParam; // 0x7c
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x7e[0x2]; // 0x7e
|
||||||
|
animgraphlib::OrientationWarpTargetOffsetMode_t m_eTargetOffsetMode; // 0x80
|
||||||
|
float m_flTargetOffset; // 0x84
|
||||||
|
animgraphlib::CAnimParamHandle m_hTargetOffsetParam; // 0x88
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x8a[0x6]; // 0x8a
|
||||||
|
animgraphlib::CAnimInputDamping m_damping; // 0x90
|
||||||
|
animgraphlib::OrientationWarpRootMotionSource_t m_eRootMotionSource; // 0xa8
|
||||||
|
float m_flMaxRootMotionScale; // 0xac
|
||||||
|
bool m_bEnablePreferredRotationDirection; // 0xb0
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0xb1[0x3]; // 0xb1
|
||||||
|
animgraphlib::AnimValueSource m_ePreferredRotationDirection; // 0xb4
|
||||||
|
float m_flPreferredRotationThreshold; // 0xb8
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0xbc[0x4];
|
||||||
|
};
|
||||||
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
// Cannot assert offsets of fields in COrientationWarpUpdateNode because it is not a standard-layout class
|
||||||
|
static_assert(sizeof(COrientationWarpUpdateNode) == 0xc0);
|
||||||
|
};
|
@ -14,7 +14,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x80
|
// Size: 0x88
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -22,11 +22,11 @@ namespace source2sdk::animgraphlib
|
|||||||
class CPairedSequenceUpdateNode : public animgraphlib::CSequenceUpdateNodeBase
|
class CPairedSequenceUpdateNode : public animgraphlib::CSequenceUpdateNodeBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
CGlobalSymbol m_sPairedSequenceRole; // 0x70
|
CGlobalSymbol m_sPairedSequenceRole; // 0x78
|
||||||
[[maybe_unused]] std::uint8_t pad_0x78[0x8];
|
[[maybe_unused]] std::uint8_t pad_0x80[0x8];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CPairedSequenceUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CPairedSequenceUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CPairedSequenceUpdateNode) == 0x80);
|
static_assert(sizeof(CPairedSequenceUpdateNode) == 0x88);
|
||||||
};
|
};
|
||||||
|
@ -14,7 +14,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x70
|
// Size: 0x78
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -22,11 +22,11 @@ namespace source2sdk::animgraphlib
|
|||||||
class CPathHelperUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CPathHelperUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
float m_flStoppingRadius; // 0x68
|
float m_flStoppingRadius; // 0x70
|
||||||
float m_flStoppingSpeedScale; // 0x6c
|
float m_flStoppingSpeedScale; // 0x74
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CPathHelperUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CPathHelperUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CPathHelperUpdateNode) == 0x70);
|
static_assert(sizeof(CPathHelperUpdateNode) == 0x78);
|
||||||
};
|
};
|
||||||
|
@ -16,7 +16,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xa8
|
// Size: 0xd8
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -27,23 +27,29 @@ namespace source2sdk::animgraphlib
|
|||||||
// m_ragdollNodePaths has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_ragdollNodePaths has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::CAnimNodePath> m_ragdollNodePaths;
|
// CUtlVector<animgraphlib::CAnimNodePath> m_ragdollNodePaths;
|
||||||
char m_ragdollNodePaths[0x18]; // 0x30
|
char m_ragdollNodePaths[0x18]; // 0x30
|
||||||
|
// m_followAttachmentNodePaths has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
|
// CUtlVector<animgraphlib::CAnimNodePath> m_followAttachmentNodePaths;
|
||||||
|
char m_followAttachmentNodePaths[0x18]; // 0x48
|
||||||
// m_boneIndices has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_boneIndices has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<int32_t> m_boneIndices;
|
// CUtlVector<int32_t> m_boneIndices;
|
||||||
char m_boneIndices[0x18]; // 0x48
|
char m_boneIndices[0x18]; // 0x60
|
||||||
// m_boneNames has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_boneNames has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<CUtlString> m_boneNames;
|
// CUtlVector<CUtlString> m_boneNames;
|
||||||
char m_boneNames[0x18]; // 0x60
|
char m_boneNames[0x18]; // 0x78
|
||||||
// m_weightLists has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_weightLists has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::WeightList> m_weightLists;
|
// CUtlVector<animgraphlib::WeightList> m_weightLists;
|
||||||
char m_weightLists[0x18]; // 0x78
|
char m_weightLists[0x18]; // 0x90
|
||||||
float m_flSpringFrequencyMin; // 0x90
|
// m_boneToWeightIndices has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
float m_flSpringFrequencyMax; // 0x94
|
// CUtlVector<int32_t> m_boneToWeightIndices;
|
||||||
float m_flMaxStretch; // 0x98
|
char m_boneToWeightIndices[0x18]; // 0xa8
|
||||||
bool m_bSolidCollisionAtZeroWeight; // 0x9c
|
float m_flSpringFrequencyMin; // 0xc0
|
||||||
[[maybe_unused]] std::uint8_t pad_0x9d[0xb];
|
float m_flSpringFrequencyMax; // 0xc4
|
||||||
|
float m_flMaxStretch; // 0xc8
|
||||||
|
bool m_bSolidCollisionAtZeroWeight; // 0xcc
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0xcd[0xb];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CRagdollComponentUpdater because it is not a standard-layout class
|
// Cannot assert offsets of fields in CRagdollComponentUpdater because it is not a standard-layout class
|
||||||
static_assert(sizeof(CRagdollComponentUpdater) == 0xa8);
|
static_assert(sizeof(CRagdollComponentUpdater) == 0xd8);
|
||||||
};
|
};
|
||||||
|
@ -15,7 +15,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x70
|
// Size: 0x78
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -23,11 +23,11 @@ namespace source2sdk::animgraphlib
|
|||||||
class CRagdollUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CRagdollUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
int32_t m_nWeightListIndex; // 0x68
|
int32_t m_nWeightListIndex; // 0x70
|
||||||
animationsystem::RagdollPoseControl m_poseControlMethod; // 0x6c
|
animationsystem::RagdollPoseControl m_poseControlMethod; // 0x74
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CRagdollUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CRagdollUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CRagdollUpdateNode) == 0x70);
|
static_assert(sizeof(CRagdollUpdateNode) == 0x78);
|
||||||
};
|
};
|
||||||
|
@ -0,0 +1,34 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "source2sdk/animgraphlib/CAnimComponentUpdater.hpp"
|
||||||
|
#include "source2sdk/animgraphlib/CRemapValueUpdateItem.hpp"
|
||||||
|
#include "source2sdk/source2gen.hpp"
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animgraphlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animgraphlib
|
||||||
|
{
|
||||||
|
// Registered alignment: 0x8
|
||||||
|
// Alignment: 0x8
|
||||||
|
// Standard-layout class: false
|
||||||
|
// Size: 0x48
|
||||||
|
// Has VTable
|
||||||
|
//
|
||||||
|
// static metadata: MGetKV3ClassDefaults
|
||||||
|
#pragma pack(push, 1)
|
||||||
|
class CRemapValueComponentUpdater : public animgraphlib::CAnimComponentUpdater
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
// m_items has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
|
// CUtlVector<animgraphlib::CRemapValueUpdateItem> m_items;
|
||||||
|
char m_items[0x18]; // 0x30
|
||||||
|
};
|
||||||
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
// Cannot assert offsets of fields in CRemapValueComponentUpdater because it is not a standard-layout class
|
||||||
|
static_assert(sizeof(CRemapValueComponentUpdater) == 0x48);
|
||||||
|
};
|
@ -0,0 +1,42 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "source2sdk/animgraphlib/CAnimParamHandle.hpp"
|
||||||
|
#include "source2sdk/source2gen.hpp"
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animgraphlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animgraphlib
|
||||||
|
{
|
||||||
|
// Registered alignment: 0x4
|
||||||
|
// Alignment: 0x4
|
||||||
|
// Standard-layout class: true
|
||||||
|
// Size: 0x14
|
||||||
|
// Has Trivial Destructor
|
||||||
|
//
|
||||||
|
// static metadata: MGetKV3ClassDefaults
|
||||||
|
#pragma pack(push, 1)
|
||||||
|
class CRemapValueUpdateItem
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
animgraphlib::CAnimParamHandle m_hParamIn; // 0x0
|
||||||
|
animgraphlib::CAnimParamHandle m_hParamOut; // 0x2
|
||||||
|
float m_flMinInputValue; // 0x4
|
||||||
|
float m_flMaxInputValue; // 0x8
|
||||||
|
float m_flMinOutputValue; // 0xc
|
||||||
|
float m_flMaxOutputValue; // 0x10
|
||||||
|
};
|
||||||
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
static_assert(offsetof(CRemapValueUpdateItem, m_hParamIn) == 0x0);
|
||||||
|
static_assert(offsetof(CRemapValueUpdateItem, m_hParamOut) == 0x2);
|
||||||
|
static_assert(offsetof(CRemapValueUpdateItem, m_flMinInputValue) == 0x4);
|
||||||
|
static_assert(offsetof(CRemapValueUpdateItem, m_flMaxInputValue) == 0x8);
|
||||||
|
static_assert(offsetof(CRemapValueUpdateItem, m_flMinOutputValue) == 0xc);
|
||||||
|
static_assert(offsetof(CRemapValueUpdateItem, m_flMaxOutputValue) == 0x10);
|
||||||
|
|
||||||
|
static_assert(sizeof(CRemapValueUpdateItem) == 0x14);
|
||||||
|
};
|
@ -14,7 +14,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x68
|
// Size: 0x70
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -25,5 +25,5 @@ namespace source2sdk::animgraphlib
|
|||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(sizeof(CRootUpdateNode) == 0x68);
|
static_assert(sizeof(CRootUpdateNode) == 0x70);
|
||||||
};
|
};
|
||||||
|
@ -18,7 +18,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xb0
|
// Size: 0xb8
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -26,28 +26,29 @@ namespace source2sdk::animgraphlib
|
|||||||
class CSelectorUpdateNode : public animgraphlib::CAnimUpdateNodeBase
|
class CSelectorUpdateNode : public animgraphlib::CAnimUpdateNodeBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x58[0x8]; // 0x58
|
||||||
// m_children has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_children has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::CAnimUpdateNodeRef> m_children;
|
// CUtlVector<animgraphlib::CAnimUpdateNodeRef> m_children;
|
||||||
char m_children[0x18]; // 0x58
|
char m_children[0x18]; // 0x60
|
||||||
// m_tags has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_tags has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<int8_t> m_tags;
|
// CUtlVector<int8_t> m_tags;
|
||||||
char m_tags[0x18]; // 0x70
|
char m_tags[0x18]; // 0x78
|
||||||
[[maybe_unused]] std::uint8_t pad_0x88[0x4]; // 0x88
|
[[maybe_unused]] std::uint8_t pad_0x90[0x4]; // 0x90
|
||||||
animgraphlib::CBlendCurve m_blendCurve; // 0x8c
|
animgraphlib::CBlendCurve m_blendCurve; // 0x94
|
||||||
// m_flBlendTime has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_flBlendTime has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CAnimValue<float> m_flBlendTime;
|
// CAnimValue<float> m_flBlendTime;
|
||||||
char m_flBlendTime[0x8]; // 0x94
|
char m_flBlendTime[0x8]; // 0x9c
|
||||||
animgraphlib::CAnimParamHandle m_hParameter; // 0x9c
|
animgraphlib::CAnimParamHandle m_hParameter; // 0xa4
|
||||||
[[maybe_unused]] std::uint8_t pad_0x9e[0x2]; // 0x9e
|
[[maybe_unused]] std::uint8_t pad_0xa6[0x2]; // 0xa6
|
||||||
int32_t m_nTagIndex; // 0xa0
|
int32_t m_nTagIndex; // 0xa8
|
||||||
animgraphlib::SelectorTagBehavior_t m_eTagBehavior; // 0xa4
|
animgraphlib::SelectorTagBehavior_t m_eTagBehavior; // 0xac
|
||||||
bool m_bResetOnChange; // 0xa8
|
bool m_bResetOnChange; // 0xb0
|
||||||
bool m_bLockWhenWaning; // 0xa9
|
bool m_bLockWhenWaning; // 0xb1
|
||||||
bool m_bSyncCyclesOnChange; // 0xaa
|
bool m_bSyncCyclesOnChange; // 0xb2
|
||||||
[[maybe_unused]] std::uint8_t pad_0xab[0x5];
|
[[maybe_unused]] std::uint8_t pad_0xb3[0x5];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CSelectorUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CSelectorUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CSelectorUpdateNode) == 0xb0);
|
static_assert(sizeof(CSelectorUpdateNode) == 0xb8);
|
||||||
};
|
};
|
||||||
|
@ -17,7 +17,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xa8
|
// Size: 0xb0
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -25,15 +25,15 @@ namespace source2sdk::animgraphlib
|
|||||||
class CSequenceUpdateNode : public animgraphlib::CSequenceUpdateNodeBase
|
class CSequenceUpdateNode : public animgraphlib::CSequenceUpdateNodeBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
animationsystem::HSequence m_hSequence; // 0x70
|
animationsystem::HSequence m_hSequence; // 0x78
|
||||||
float m_duration; // 0x74
|
float m_duration; // 0x7c
|
||||||
animgraphlib::CParamSpanUpdater m_paramSpans; // 0x78
|
animgraphlib::CParamSpanUpdater m_paramSpans; // 0x80
|
||||||
// m_tags has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_tags has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::TagSpan_t> m_tags;
|
// CUtlVector<animgraphlib::TagSpan_t> m_tags;
|
||||||
char m_tags[0x18]; // 0x90
|
char m_tags[0x18]; // 0x98
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CSequenceUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CSequenceUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CSequenceUpdateNode) == 0xa8);
|
static_assert(sizeof(CSequenceUpdateNode) == 0xb0);
|
||||||
};
|
};
|
||||||
|
@ -14,7 +14,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: unknown
|
// Registered alignment: unknown
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x70
|
// Size: 0x78
|
||||||
// Has VTable
|
// Has VTable
|
||||||
// Is Abstract
|
// Is Abstract
|
||||||
//
|
//
|
||||||
@ -23,13 +23,13 @@ namespace source2sdk::animgraphlib
|
|||||||
class CSequenceUpdateNodeBase : public animgraphlib::CLeafUpdateNode
|
class CSequenceUpdateNodeBase : public animgraphlib::CLeafUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x58[0xc]; // 0x58
|
[[maybe_unused]] std::uint8_t pad_0x58[0x14]; // 0x58
|
||||||
float m_playbackSpeed; // 0x64
|
float m_playbackSpeed; // 0x6c
|
||||||
bool m_bLoop; // 0x68
|
bool m_bLoop; // 0x70
|
||||||
[[maybe_unused]] std::uint8_t pad_0x69[0x7];
|
[[maybe_unused]] std::uint8_t pad_0x71[0x7];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CSequenceUpdateNodeBase because it is not a standard-layout class
|
// Cannot assert offsets of fields in CSequenceUpdateNodeBase because it is not a standard-layout class
|
||||||
static_assert(sizeof(CSequenceUpdateNodeBase) == 0x70);
|
static_assert(sizeof(CSequenceUpdateNodeBase) == 0x78);
|
||||||
};
|
};
|
||||||
|
@ -14,7 +14,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x70
|
// Size: 0x78
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -22,11 +22,11 @@ namespace source2sdk::animgraphlib
|
|||||||
class CSlowDownOnSlopesUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CSlowDownOnSlopesUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
float m_flSlowDownStrength; // 0x68
|
float m_flSlowDownStrength; // 0x70
|
||||||
[[maybe_unused]] std::uint8_t pad_0x6c[0x4];
|
[[maybe_unused]] std::uint8_t pad_0x74[0x4];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CSlowDownOnSlopesUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CSlowDownOnSlopesUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CSlowDownOnSlopesUpdateNode) == 0x70);
|
static_assert(sizeof(CSlowDownOnSlopesUpdateNode) == 0x78);
|
||||||
};
|
};
|
||||||
|
@ -26,8 +26,8 @@ namespace source2sdk::animgraphlib
|
|||||||
public:
|
public:
|
||||||
// m_targetHandles has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_targetHandles has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::CSolveIKTargetHandle_t> m_targetHandles;
|
// CUtlVector<animgraphlib::CSolveIKTargetHandle_t> m_targetHandles;
|
||||||
char m_targetHandles[0x18]; // 0x68
|
char m_targetHandles[0x18]; // 0x70
|
||||||
animgraphlib::SolveIKChainPoseOpFixedSettings_t m_opFixedData; // 0x80
|
animgraphlib::SolveIKChainPoseOpFixedSettings_t m_opFixedData; // 0x88
|
||||||
[[maybe_unused]] std::uint8_t pad_0xa0[0x8];
|
[[maybe_unused]] std::uint8_t pad_0xa0[0x8];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
@ -15,7 +15,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x70
|
// Size: 0x78
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -23,11 +23,11 @@ namespace source2sdk::animgraphlib
|
|||||||
class CSpeedScaleUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CSpeedScaleUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
animgraphlib::CAnimParamHandle m_paramIndex; // 0x68
|
animgraphlib::CAnimParamHandle m_paramIndex; // 0x70
|
||||||
[[maybe_unused]] std::uint8_t pad_0x6a[0x6];
|
[[maybe_unused]] std::uint8_t pad_0x72[0x6];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CSpeedScaleUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CSpeedScaleUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CSpeedScaleUpdateNode) == 0x70);
|
static_assert(sizeof(CSpeedScaleUpdateNode) == 0x78);
|
||||||
};
|
};
|
||||||
|
@ -18,7 +18,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x98
|
// Size: 0xa0
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -28,14 +28,14 @@ namespace source2sdk::animgraphlib
|
|||||||
public:
|
public:
|
||||||
// m_footStanceInfo has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_footStanceInfo has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::StanceInfo_t> m_footStanceInfo;
|
// CUtlVector<animgraphlib::StanceInfo_t> m_footStanceInfo;
|
||||||
char m_footStanceInfo[0x18]; // 0x68
|
char m_footStanceInfo[0x18]; // 0x70
|
||||||
animgraphlib::CAnimUpdateNodeRef m_pStanceSourceNode; // 0x80
|
animgraphlib::CAnimUpdateNodeRef m_pStanceSourceNode; // 0x88
|
||||||
animgraphlib::CAnimParamHandle m_hParameter; // 0x90
|
animgraphlib::CAnimParamHandle m_hParameter; // 0x98
|
||||||
[[maybe_unused]] std::uint8_t pad_0x92[0x2]; // 0x92
|
[[maybe_unused]] std::uint8_t pad_0x9a[0x2]; // 0x9a
|
||||||
animgraphlib::StanceOverrideMode m_eMode; // 0x94
|
animgraphlib::StanceOverrideMode m_eMode; // 0x9c
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CStanceOverrideUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CStanceOverrideUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CStanceOverrideUpdateNode) == 0x98);
|
static_assert(sizeof(CStanceOverrideUpdateNode) == 0xa0);
|
||||||
};
|
};
|
||||||
|
@ -15,7 +15,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x70
|
// Size: 0x78
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -23,11 +23,11 @@ namespace source2sdk::animgraphlib
|
|||||||
class CStanceScaleUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CStanceScaleUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
animgraphlib::CAnimParamHandle m_hParam; // 0x68
|
animgraphlib::CAnimParamHandle m_hParam; // 0x70
|
||||||
[[maybe_unused]] std::uint8_t pad_0x6a[0x6];
|
[[maybe_unused]] std::uint8_t pad_0x72[0x6];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CStanceScaleUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CStanceScaleUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CStanceScaleUpdateNode) == 0x70);
|
static_assert(sizeof(CStanceScaleUpdateNode) == 0x78);
|
||||||
};
|
};
|
||||||
|
@ -17,7 +17,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0xf8
|
// Size: 0x100
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -25,21 +25,22 @@ namespace source2sdk::animgraphlib
|
|||||||
class CStateMachineUpdateNode : public animgraphlib::CAnimUpdateNodeBase
|
class CStateMachineUpdateNode : public animgraphlib::CAnimUpdateNodeBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x58[0x10]; // 0x58
|
[[maybe_unused]] std::uint8_t pad_0x58[0x18]; // 0x58
|
||||||
animgraphlib::CAnimStateMachineUpdater m_stateMachine; // 0x68
|
animgraphlib::CAnimStateMachineUpdater m_stateMachine; // 0x70
|
||||||
// m_stateData has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_stateData has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::CStateNodeStateData> m_stateData;
|
// CUtlVector<animgraphlib::CStateNodeStateData> m_stateData;
|
||||||
char m_stateData[0x18]; // 0xc0
|
char m_stateData[0x18]; // 0xc8
|
||||||
// m_transitionData has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_transitionData has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::CStateNodeTransitionData> m_transitionData;
|
// CUtlVector<animgraphlib::CStateNodeTransitionData> m_transitionData;
|
||||||
char m_transitionData[0x18]; // 0xd8
|
char m_transitionData[0x18]; // 0xe0
|
||||||
[[maybe_unused]] std::uint8_t pad_0xf0[0x4]; // 0xf0
|
[[maybe_unused]] std::uint8_t pad_0xf8[0x4]; // 0xf8
|
||||||
bool m_bBlockWaningTags; // 0xf4
|
bool m_bBlockWaningTags; // 0xfc
|
||||||
bool m_bLockStateWhenWaning; // 0xf5
|
bool m_bLockStateWhenWaning; // 0xfd
|
||||||
[[maybe_unused]] std::uint8_t pad_0xf6[0x2];
|
bool m_bResetWhenActivated; // 0xfe
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0xff[0x1];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CStateMachineUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CStateMachineUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CStateMachineUpdateNode) == 0xf8);
|
static_assert(sizeof(CStateMachineUpdateNode) == 0x100);
|
||||||
};
|
};
|
||||||
|
@ -37,7 +37,9 @@ namespace source2sdk::animgraphlib
|
|||||||
uint8_t m_bIsStartState: 1;
|
uint8_t m_bIsStartState: 1;
|
||||||
uint8_t m_bIsEndState: 1;
|
uint8_t m_bIsEndState: 1;
|
||||||
uint8_t m_bIsPassthrough: 1;
|
uint8_t m_bIsPassthrough: 1;
|
||||||
// end of bitfield block // 3 bits
|
uint8_t m_bIsPassthroughRootMotion: 1;
|
||||||
|
uint8_t m_bPreEvaluatePassthroughTransitionPath: 1;
|
||||||
|
// end of bitfield block // 5 bits
|
||||||
[[maybe_unused]] std::uint8_t pad_0x45[0x3];
|
[[maybe_unused]] std::uint8_t pad_0x45[0x3];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
@ -50,6 +52,8 @@ namespace source2sdk::animgraphlib
|
|||||||
// Cannot assert offset of bitfield CStateUpdateData::m_bIsStartState
|
// Cannot assert offset of bitfield CStateUpdateData::m_bIsStartState
|
||||||
// Cannot assert offset of bitfield CStateUpdateData::m_bIsEndState
|
// Cannot assert offset of bitfield CStateUpdateData::m_bIsEndState
|
||||||
// Cannot assert offset of bitfield CStateUpdateData::m_bIsPassthrough
|
// Cannot assert offset of bitfield CStateUpdateData::m_bIsPassthrough
|
||||||
|
// Cannot assert offset of bitfield CStateUpdateData::m_bIsPassthroughRootMotion
|
||||||
|
// Cannot assert offset of bitfield CStateUpdateData::m_bPreEvaluatePassthroughTransitionPath
|
||||||
|
|
||||||
static_assert(sizeof(CStateUpdateData) == 0x48);
|
static_assert(sizeof(CStateUpdateData) == 0x48);
|
||||||
};
|
};
|
||||||
|
@ -15,7 +15,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x90
|
// Size: 0xa0
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -23,16 +23,16 @@ namespace source2sdk::animgraphlib
|
|||||||
class CStopAtGoalUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CStopAtGoalUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x68[0x4]; // 0x68
|
[[maybe_unused]] std::uint8_t pad_0x70[0x4]; // 0x70
|
||||||
float m_flOuterRadius; // 0x6c
|
float m_flOuterRadius; // 0x74
|
||||||
float m_flInnerRadius; // 0x70
|
float m_flInnerRadius; // 0x78
|
||||||
float m_flMaxScale; // 0x74
|
float m_flMaxScale; // 0x7c
|
||||||
float m_flMinScale; // 0x78
|
float m_flMinScale; // 0x80
|
||||||
[[maybe_unused]] std::uint8_t pad_0x7c[0x4]; // 0x7c
|
[[maybe_unused]] std::uint8_t pad_0x84[0x4]; // 0x84
|
||||||
animgraphlib::CAnimInputDamping m_damping; // 0x80
|
animgraphlib::CAnimInputDamping m_damping; // 0x88
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CStopAtGoalUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CStopAtGoalUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CStopAtGoalUpdateNode) == 0x90);
|
static_assert(sizeof(CStopAtGoalUpdateNode) == 0xa0);
|
||||||
};
|
};
|
||||||
|
@ -15,7 +15,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x98
|
// Size: 0xa0
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -23,15 +23,15 @@ namespace source2sdk::animgraphlib
|
|||||||
class CSubtractUpdateNode : public animgraphlib::CBinaryUpdateNode
|
class CSubtractUpdateNode : public animgraphlib::CBinaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x88[0x4]; // 0x88
|
[[maybe_unused]] std::uint8_t pad_0x90[0x4]; // 0x90
|
||||||
animgraphlib::BinaryNodeChildOption m_footMotionTiming; // 0x8c
|
animgraphlib::BinaryNodeChildOption m_footMotionTiming; // 0x94
|
||||||
bool m_bApplyToFootMotion; // 0x90
|
bool m_bApplyToFootMotion; // 0x98
|
||||||
bool m_bApplyChannelsSeparately; // 0x91
|
bool m_bApplyChannelsSeparately; // 0x99
|
||||||
bool m_bUseModelSpace; // 0x92
|
bool m_bUseModelSpace; // 0x9a
|
||||||
[[maybe_unused]] std::uint8_t pad_0x93[0x5];
|
[[maybe_unused]] std::uint8_t pad_0x9b[0x5];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CSubtractUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CSubtractUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CSubtractUpdateNode) == 0x98);
|
static_assert(sizeof(CSubtractUpdateNode) == 0xa0);
|
||||||
};
|
};
|
||||||
|
@ -16,7 +16,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x78
|
// Size: 0x88
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -24,15 +24,21 @@ namespace source2sdk::animgraphlib
|
|||||||
class CTargetSelectorUpdateNode : public animgraphlib::CAnimUpdateNodeBase
|
class CTargetSelectorUpdateNode : public animgraphlib::CAnimUpdateNodeBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x58[0x8]; // 0x58
|
||||||
// m_children has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_children has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::CAnimUpdateNodeRef> m_children;
|
// CUtlVector<animgraphlib::CAnimUpdateNodeRef> m_children;
|
||||||
char m_children[0x18]; // 0x58
|
char m_children[0x18]; // 0x60
|
||||||
[[maybe_unused]] std::uint8_t pad_0x70[0x4]; // 0x70
|
[[maybe_unused]] std::uint8_t pad_0x78[0x4]; // 0x78
|
||||||
animgraphlib::CAnimParamHandle m_hPositionParameter; // 0x74
|
animgraphlib::CAnimParamHandle m_hTargetPosition; // 0x7c
|
||||||
animgraphlib::CAnimParamHandle m_hOrientationParameter; // 0x76
|
animgraphlib::CAnimParamHandle m_hTargetFacePositionParameter; // 0x7e
|
||||||
|
bool m_bTargetPositionIsWorldSpace; // 0x80
|
||||||
|
bool m_bTargetFacePositionIsWorldSpace; // 0x81
|
||||||
|
bool m_bEnablePhaseMatching; // 0x82
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x83[0x1]; // 0x83
|
||||||
|
float m_flPhaseMatchingMaxRootMotionSkip; // 0x84
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CTargetSelectorUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CTargetSelectorUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CTargetSelectorUpdateNode) == 0x78);
|
static_assert(sizeof(CTargetSelectorUpdateNode) == 0x88);
|
||||||
};
|
};
|
||||||
|
@ -15,7 +15,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x70
|
// Size: 0x88
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -23,12 +23,20 @@ namespace source2sdk::animgraphlib
|
|||||||
class CTargetWarpUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CTargetWarpUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x68[0x4]; // 0x68
|
[[maybe_unused]] std::uint8_t pad_0x70[0x4]; // 0x70
|
||||||
animgraphlib::CAnimParamHandle m_hPositionParameter; // 0x6c
|
animgraphlib::CAnimParamHandle m_hTargetPositionParameter; // 0x74
|
||||||
animgraphlib::CAnimParamHandle m_hOrientationParameter; // 0x6e
|
animgraphlib::CAnimParamHandle m_hTargetUpVectorParameter; // 0x76
|
||||||
|
animgraphlib::CAnimParamHandle m_hTargetFacePositionParameter; // 0x78
|
||||||
|
bool m_bTargetFacePositionIsWorldSpace; // 0x7a
|
||||||
|
bool m_bTargetPositionIsWorldSpace; // 0x7b
|
||||||
|
bool m_bOnlyWarpWhenTagIsFound; // 0x7c
|
||||||
|
bool m_bWarpOrientationDuringTranslation; // 0x7d
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x7e[0x2]; // 0x7e
|
||||||
|
float m_flMaxAngle; // 0x80
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x84[0x4];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CTargetWarpUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CTargetWarpUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CTargetWarpUpdateNode) == 0x70);
|
static_assert(sizeof(CTargetWarpUpdateNode) == 0x88);
|
||||||
};
|
};
|
||||||
|
@ -15,7 +15,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x88
|
// Size: 0x90
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -23,18 +23,18 @@ namespace source2sdk::animgraphlib
|
|||||||
class CTurnHelperUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CTurnHelperUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x68[0x4]; // 0x68
|
[[maybe_unused]] std::uint8_t pad_0x70[0x4]; // 0x70
|
||||||
animgraphlib::AnimValueSource m_facingTarget; // 0x6c
|
animgraphlib::AnimValueSource m_facingTarget; // 0x74
|
||||||
float m_turnStartTimeOffset; // 0x70
|
float m_turnStartTimeOffset; // 0x78
|
||||||
float m_turnDuration; // 0x74
|
float m_turnDuration; // 0x7c
|
||||||
bool m_bMatchChildDuration; // 0x78
|
bool m_bMatchChildDuration; // 0x80
|
||||||
[[maybe_unused]] std::uint8_t pad_0x79[0x3]; // 0x79
|
[[maybe_unused]] std::uint8_t pad_0x81[0x3]; // 0x81
|
||||||
float m_manualTurnOffset; // 0x7c
|
float m_manualTurnOffset; // 0x84
|
||||||
bool m_bUseManualTurnOffset; // 0x80
|
bool m_bUseManualTurnOffset; // 0x88
|
||||||
[[maybe_unused]] std::uint8_t pad_0x81[0x7];
|
[[maybe_unused]] std::uint8_t pad_0x89[0x7];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CTurnHelperUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CTurnHelperUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CTurnHelperUpdateNode) == 0x88);
|
static_assert(sizeof(CTurnHelperUpdateNode) == 0x90);
|
||||||
};
|
};
|
||||||
|
@ -23,7 +23,6 @@ namespace source2sdk::animgraphlib
|
|||||||
class CTwoBoneIKUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CTwoBoneIKUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x68[0x8]; // 0x68
|
|
||||||
animgraphlib::TwoBoneIKSettings_t m_opFixedData; // 0x70
|
animgraphlib::TwoBoneIKSettings_t m_opFixedData; // 0x70
|
||||||
[[maybe_unused]] std::uint8_t pad_0x1d0[0x10];
|
[[maybe_unused]] std::uint8_t pad_0x1d0[0x10];
|
||||||
};
|
};
|
||||||
|
@ -15,7 +15,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x68
|
// Size: 0x70
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -23,10 +23,11 @@ namespace source2sdk::animgraphlib
|
|||||||
class CUnaryUpdateNode : public animgraphlib::CAnimUpdateNodeBase
|
class CUnaryUpdateNode : public animgraphlib::CAnimUpdateNodeBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
animgraphlib::CAnimUpdateNodeRef m_pChildNode; // 0x58
|
[[maybe_unused]] std::uint8_t pad_0x58[0x8]; // 0x58
|
||||||
|
animgraphlib::CAnimUpdateNodeRef m_pChildNode; // 0x60
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CUnaryUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CUnaryUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CUnaryUpdateNode) == 0x68);
|
static_assert(sizeof(CUnaryUpdateNode) == 0x70);
|
||||||
};
|
};
|
||||||
|
36
sdk/include/source2sdk/animgraphlib/CWarpSectionAnimTag.hpp
Normal file
36
sdk/include/source2sdk/animgraphlib/CWarpSectionAnimTag.hpp
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "source2sdk/animgraphlib/CWarpSectionAnimTagBase.hpp"
|
||||||
|
#include "source2sdk/source2gen.hpp"
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animgraphlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animgraphlib
|
||||||
|
{
|
||||||
|
// Registered alignment: 0x8
|
||||||
|
// Alignment: 0x8
|
||||||
|
// Standard-layout class: false
|
||||||
|
// Size: 0x58
|
||||||
|
// Has VTable
|
||||||
|
//
|
||||||
|
// static metadata: MGetKV3ClassDefaults
|
||||||
|
// static metadata: MPropertyFriendlyName "Warp Section Tag"
|
||||||
|
#pragma pack(push, 1)
|
||||||
|
class CWarpSectionAnimTag : public animgraphlib::CWarpSectionAnimTagBase
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
// metadata: MPropertyFriendlyName "Warp Position"
|
||||||
|
bool m_bWarpPosition; // 0x50
|
||||||
|
// metadata: MPropertyFriendlyName "Warp Orientation"
|
||||||
|
bool m_bWarpOrientation; // 0x51
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x52[0x6];
|
||||||
|
};
|
||||||
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
// Cannot assert offsets of fields in CWarpSectionAnimTag because it is not a standard-layout class
|
||||||
|
static_assert(sizeof(CWarpSectionAnimTag) == 0x58);
|
||||||
|
};
|
@ -0,0 +1,29 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "source2sdk/animgraphlib/CAnimTagBase.hpp"
|
||||||
|
#include "source2sdk/source2gen.hpp"
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animgraphlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animgraphlib
|
||||||
|
{
|
||||||
|
// Registered alignment: 0x8
|
||||||
|
// Alignment: 0x8
|
||||||
|
// Standard-layout class: false
|
||||||
|
// Size: 0x50
|
||||||
|
// Has VTable
|
||||||
|
//
|
||||||
|
// static metadata: MGetKV3ClassDefaults
|
||||||
|
#pragma pack(push, 1)
|
||||||
|
class CWarpSectionAnimTagBase : public animgraphlib::CAnimTagBase
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
};
|
||||||
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
static_assert(sizeof(CWarpSectionAnimTagBase) == 0x50);
|
||||||
|
};
|
@ -14,7 +14,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x78
|
// Size: 0x80
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
@ -22,16 +22,16 @@ namespace source2sdk::animgraphlib
|
|||||||
class CWayPointHelperUpdateNode : public animgraphlib::CUnaryUpdateNode
|
class CWayPointHelperUpdateNode : public animgraphlib::CUnaryUpdateNode
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x68[0x4]; // 0x68
|
[[maybe_unused]] std::uint8_t pad_0x70[0x4]; // 0x70
|
||||||
float m_flStartCycle; // 0x6c
|
float m_flStartCycle; // 0x74
|
||||||
float m_flEndCycle; // 0x70
|
float m_flEndCycle; // 0x78
|
||||||
bool m_bOnlyGoals; // 0x74
|
bool m_bOnlyGoals; // 0x7c
|
||||||
bool m_bPreventOvershoot; // 0x75
|
bool m_bPreventOvershoot; // 0x7d
|
||||||
bool m_bPreventUndershoot; // 0x76
|
bool m_bPreventUndershoot; // 0x7e
|
||||||
[[maybe_unused]] std::uint8_t pad_0x77[0x1];
|
[[maybe_unused]] std::uint8_t pad_0x7f[0x1];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CWayPointHelperUpdateNode because it is not a standard-layout class
|
// Cannot assert offsets of fields in CWayPointHelperUpdateNode because it is not a standard-layout class
|
||||||
static_assert(sizeof(CWayPointHelperUpdateNode) == 0x78);
|
static_assert(sizeof(CWayPointHelperUpdateNode) == 0x80);
|
||||||
};
|
};
|
||||||
|
@ -25,7 +25,6 @@ namespace source2sdk::animgraphlib
|
|||||||
public:
|
public:
|
||||||
int32_t m_nChainIndex; // 0x0
|
int32_t m_nChainIndex; // 0x0
|
||||||
animgraphlib::IKSolverSettings_t m_SolverSettings; // 0x4
|
animgraphlib::IKSolverSettings_t m_SolverSettings; // 0x4
|
||||||
[[maybe_unused]] std::uint8_t pad_0x0c[0x4]; // 0xc
|
|
||||||
animgraphlib::IKTargetSettings_t m_TargetSettings; // 0x10
|
animgraphlib::IKTargetSettings_t m_TargetSettings; // 0x10
|
||||||
animgraphlib::SolveIKChainAnimNodeDebugSetting m_DebugSetting; // 0x38
|
animgraphlib::SolveIKChainAnimNodeDebugSetting m_DebugSetting; // 0x38
|
||||||
float m_flDebugNormalizedValue; // 0x3c
|
float m_flDebugNormalizedValue; // 0x3c
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
namespace source2sdk::animgraphlib
|
namespace source2sdk::animgraphlib
|
||||||
{
|
{
|
||||||
// Enumerator count: 3
|
// Enumerator count: 4
|
||||||
// Alignment: 4
|
// Alignment: 4
|
||||||
// Size: 0x4
|
// Size: 0x4
|
||||||
enum class DampingSpeedFunction : std::uint32_t
|
enum class DampingSpeedFunction : std::uint32_t
|
||||||
@ -16,5 +16,6 @@ namespace source2sdk::animgraphlib
|
|||||||
NoDamping = 0x0,
|
NoDamping = 0x0,
|
||||||
Constant = 0x1,
|
Constant = 0x1,
|
||||||
Spring = 0x2,
|
Spring = 0x2,
|
||||||
|
AsymmetricSpring = 0x3,
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -0,0 +1,31 @@
|
|||||||
|
#pragma once
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animgraphlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animgraphlib
|
||||||
|
{
|
||||||
|
// Enumerator count: 5
|
||||||
|
// Alignment: 4
|
||||||
|
// Size: 0x4
|
||||||
|
enum class EIKEndEffectorRotationFixUpMode : std::uint32_t
|
||||||
|
{
|
||||||
|
// MPropertyFriendlyName "None"
|
||||||
|
// MPropertyDescription "However the end effector ends up after the solve, it's rotation will remain unchanged."
|
||||||
|
None = 0x0,
|
||||||
|
// MPropertyFriendlyName "Match Target Orientation"
|
||||||
|
// MPropertyDescription "The targets orientation will be stamped onto the end effector."
|
||||||
|
MatchTargetOrientation = 0x1,
|
||||||
|
// MPropertyFriendlyName "Look At Target Forward"
|
||||||
|
// MPropertyDescription "The targets forward vector will be used to build a look orientation while preserving the rotation of the end effector after the solve as much as possible."
|
||||||
|
LookAtTargetForward = 0x2,
|
||||||
|
// MPropertyFriendlyName "Maintain Parent Orientation"
|
||||||
|
// MPropertyDescription "Use the parent bone's orientation as the end effector's orientation."
|
||||||
|
MaintainParentOrientation = 0x3,
|
||||||
|
// MPropertySuppressEnumerator
|
||||||
|
Count = 0x4,
|
||||||
|
};
|
||||||
|
};
|
@ -1,4 +1,5 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
#include "source2sdk/modellib/AttachmentHandle_t.hpp"
|
||||||
#include "source2sdk/modellib/CAnimAttachment.hpp"
|
#include "source2sdk/modellib/CAnimAttachment.hpp"
|
||||||
#include "source2sdk/source2gen.hpp"
|
#include "source2sdk/source2gen.hpp"
|
||||||
#include <cstddef>
|
#include <cstddef>
|
||||||
@ -24,16 +25,18 @@ namespace source2sdk::animgraphlib
|
|||||||
public:
|
public:
|
||||||
modellib::CAnimAttachment m_attachment; // 0x0
|
modellib::CAnimAttachment m_attachment; // 0x0
|
||||||
int32_t m_boneIndex; // 0x80
|
int32_t m_boneIndex; // 0x80
|
||||||
bool m_bMatchTranslation; // 0x84
|
modellib::AttachmentHandle_t m_attachmentHandle; // 0x84
|
||||||
bool m_bMatchRotation; // 0x85
|
bool m_bMatchTranslation; // 0x85
|
||||||
[[maybe_unused]] std::uint8_t pad_0x86[0xa];
|
bool m_bMatchRotation; // 0x86
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x87[0x9];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(offsetof(FollowAttachmentSettings_t, m_attachment) == 0x0);
|
static_assert(offsetof(FollowAttachmentSettings_t, m_attachment) == 0x0);
|
||||||
static_assert(offsetof(FollowAttachmentSettings_t, m_boneIndex) == 0x80);
|
static_assert(offsetof(FollowAttachmentSettings_t, m_boneIndex) == 0x80);
|
||||||
static_assert(offsetof(FollowAttachmentSettings_t, m_bMatchTranslation) == 0x84);
|
static_assert(offsetof(FollowAttachmentSettings_t, m_attachmentHandle) == 0x84);
|
||||||
static_assert(offsetof(FollowAttachmentSettings_t, m_bMatchRotation) == 0x85);
|
static_assert(offsetof(FollowAttachmentSettings_t, m_bMatchTranslation) == 0x85);
|
||||||
|
static_assert(offsetof(FollowAttachmentSettings_t, m_bMatchRotation) == 0x86);
|
||||||
|
|
||||||
static_assert(sizeof(FollowAttachmentSettings_t) == 0x90);
|
static_assert(sizeof(FollowAttachmentSettings_t) == 0x90);
|
||||||
};
|
};
|
||||||
|
@ -16,7 +16,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: true
|
// Standard-layout class: true
|
||||||
// Size: 0x60
|
// Size: 0x68
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
#pragma pack(push, 1)
|
#pragma pack(push, 1)
|
||||||
@ -27,47 +27,47 @@ namespace source2sdk::animgraphlib
|
|||||||
// CUtlVector<animgraphlib::FootFixedData_t> m_footInfo;
|
// CUtlVector<animgraphlib::FootFixedData_t> m_footInfo;
|
||||||
char m_footInfo[0x18]; // 0x0
|
char m_footInfo[0x18]; // 0x0
|
||||||
animgraphlib::CAnimInputDamping m_hipDampingSettings; // 0x18
|
animgraphlib::CAnimInputDamping m_hipDampingSettings; // 0x18
|
||||||
int32_t m_nHipBoneIndex; // 0x28
|
int32_t m_nHipBoneIndex; // 0x30
|
||||||
animgraphlib::IKSolverType m_ikSolverType; // 0x2c
|
animgraphlib::IKSolverType m_ikSolverType; // 0x34
|
||||||
bool m_bApplyTilt; // 0x30
|
bool m_bApplyTilt; // 0x38
|
||||||
bool m_bApplyHipDrop; // 0x31
|
bool m_bApplyHipDrop; // 0x39
|
||||||
bool m_bAlwaysUseFallbackHinge; // 0x32
|
bool m_bAlwaysUseFallbackHinge; // 0x3a
|
||||||
bool m_bApplyFootRotationLimits; // 0x33
|
bool m_bApplyFootRotationLimits; // 0x3b
|
||||||
bool m_bApplyLegTwistLimits; // 0x34
|
bool m_bApplyLegTwistLimits; // 0x3c
|
||||||
[[maybe_unused]] std::uint8_t pad_0x35[0x3]; // 0x35
|
[[maybe_unused]] std::uint8_t pad_0x3d[0x3]; // 0x3d
|
||||||
float m_flMaxFootHeight; // 0x38
|
float m_flMaxFootHeight; // 0x40
|
||||||
float m_flExtensionScale; // 0x3c
|
float m_flExtensionScale; // 0x44
|
||||||
float m_flMaxLegTwist; // 0x40
|
float m_flMaxLegTwist; // 0x48
|
||||||
bool m_bEnableLockBreaking; // 0x44
|
bool m_bEnableLockBreaking; // 0x4c
|
||||||
[[maybe_unused]] std::uint8_t pad_0x45[0x3]; // 0x45
|
[[maybe_unused]] std::uint8_t pad_0x4d[0x3]; // 0x4d
|
||||||
float m_flLockBreakTolerance; // 0x48
|
float m_flLockBreakTolerance; // 0x50
|
||||||
float m_flLockBlendTime; // 0x4c
|
float m_flLockBlendTime; // 0x54
|
||||||
bool m_bEnableStretching; // 0x50
|
bool m_bEnableStretching; // 0x58
|
||||||
[[maybe_unused]] std::uint8_t pad_0x51[0x3]; // 0x51
|
[[maybe_unused]] std::uint8_t pad_0x59[0x3]; // 0x59
|
||||||
float m_flMaxStretchAmount; // 0x54
|
float m_flMaxStretchAmount; // 0x5c
|
||||||
float m_flStretchExtensionScale; // 0x58
|
float m_flStretchExtensionScale; // 0x60
|
||||||
[[maybe_unused]] std::uint8_t pad_0x5c[0x4];
|
[[maybe_unused]] std::uint8_t pad_0x64[0x4];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_footInfo) == 0x0);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_footInfo) == 0x0);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_hipDampingSettings) == 0x18);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_hipDampingSettings) == 0x18);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_nHipBoneIndex) == 0x28);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_nHipBoneIndex) == 0x30);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_ikSolverType) == 0x2c);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_ikSolverType) == 0x34);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_bApplyTilt) == 0x30);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_bApplyTilt) == 0x38);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_bApplyHipDrop) == 0x31);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_bApplyHipDrop) == 0x39);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_bAlwaysUseFallbackHinge) == 0x32);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_bAlwaysUseFallbackHinge) == 0x3a);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_bApplyFootRotationLimits) == 0x33);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_bApplyFootRotationLimits) == 0x3b);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_bApplyLegTwistLimits) == 0x34);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_bApplyLegTwistLimits) == 0x3c);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_flMaxFootHeight) == 0x38);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_flMaxFootHeight) == 0x40);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_flExtensionScale) == 0x3c);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_flExtensionScale) == 0x44);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_flMaxLegTwist) == 0x40);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_flMaxLegTwist) == 0x48);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_bEnableLockBreaking) == 0x44);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_bEnableLockBreaking) == 0x4c);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_flLockBreakTolerance) == 0x48);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_flLockBreakTolerance) == 0x50);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_flLockBlendTime) == 0x4c);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_flLockBlendTime) == 0x54);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_bEnableStretching) == 0x50);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_bEnableStretching) == 0x58);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_flMaxStretchAmount) == 0x54);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_flMaxStretchAmount) == 0x5c);
|
||||||
static_assert(offsetof(FootLockPoseOpFixedSettings, m_flStretchExtensionScale) == 0x58);
|
static_assert(offsetof(FootLockPoseOpFixedSettings, m_flStretchExtensionScale) == 0x60);
|
||||||
|
|
||||||
static_assert(sizeof(FootLockPoseOpFixedSettings) == 0x60);
|
static_assert(sizeof(FootLockPoseOpFixedSettings) == 0x68);
|
||||||
};
|
};
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
#include "source2sdk/animgraphlib/EIKEndEffectorRotationFixUpMode.hpp"
|
||||||
#include "source2sdk/animgraphlib/IKSolverType.hpp"
|
#include "source2sdk/animgraphlib/IKSolverType.hpp"
|
||||||
#include "source2sdk/source2gen.hpp"
|
#include "source2sdk/source2gen.hpp"
|
||||||
#include <cstddef>
|
#include <cstddef>
|
||||||
@ -14,7 +15,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: unknown
|
// Registered alignment: unknown
|
||||||
// Alignment: 0x4
|
// Alignment: 0x4
|
||||||
// Standard-layout class: true
|
// Standard-layout class: true
|
||||||
// Size: 0x8
|
// Size: 0xc
|
||||||
// Has Trivial Destructor
|
// Has Trivial Destructor
|
||||||
#pragma pack(push, 1)
|
#pragma pack(push, 1)
|
||||||
struct IKSolverSettings_t
|
struct IKSolverSettings_t
|
||||||
@ -26,11 +27,14 @@ namespace source2sdk::animgraphlib
|
|||||||
// metadata: MPropertyFriendlyName "Num Iterations "
|
// metadata: MPropertyFriendlyName "Num Iterations "
|
||||||
// metadata: MPropertyAttrStateCallback
|
// metadata: MPropertyAttrStateCallback
|
||||||
int32_t m_nNumIterations; // 0x4
|
int32_t m_nNumIterations; // 0x4
|
||||||
|
// metadata: MPropertyFriendlyName "End Effector Rotation Behaviour"
|
||||||
|
animgraphlib::EIKEndEffectorRotationFixUpMode m_EndEffectorRotationFixUpMode; // 0x8
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(offsetof(IKSolverSettings_t, m_SolverType) == 0x0);
|
static_assert(offsetof(IKSolverSettings_t, m_SolverType) == 0x0);
|
||||||
static_assert(offsetof(IKSolverSettings_t, m_nNumIterations) == 0x4);
|
static_assert(offsetof(IKSolverSettings_t, m_nNumIterations) == 0x4);
|
||||||
|
static_assert(offsetof(IKSolverSettings_t, m_EndEffectorRotationFixUpMode) == 0x8);
|
||||||
|
|
||||||
static_assert(sizeof(IKSolverSettings_t) == 0x8);
|
static_assert(sizeof(IKSolverSettings_t) == 0xc);
|
||||||
};
|
};
|
||||||
|
@ -14,14 +14,19 @@ namespace source2sdk::animgraphlib
|
|||||||
enum class IKSolverType : std::uint32_t
|
enum class IKSolverType : std::uint32_t
|
||||||
{
|
{
|
||||||
// MPropertyFriendlyName "Perlin"
|
// MPropertyFriendlyName "Perlin"
|
||||||
|
// MPropertyDescription "Classic perlin 2-bone solver"
|
||||||
IKSOLVER_Perlin = 0x0,
|
IKSOLVER_Perlin = 0x0,
|
||||||
// MPropertyFriendlyName "Two Bone"
|
// MPropertyFriendlyName "Two Bone"
|
||||||
|
// MPropertyDescription "2-bone solver that does not have singularities that Perlin does, and should be used as a default starting point for 2 bone solves."
|
||||||
IKSOLVER_TwoBone = 0x1,
|
IKSOLVER_TwoBone = 0x1,
|
||||||
// MPropertyFriendlyName "FABRIK"
|
// MPropertyFriendlyName "FABRIK"
|
||||||
|
// MPropertyDescription ""Forward And Backward Reaching Inverse Kinematics" solver - A solver that can handle any number of bones and works by iteratively solving for the position of each bone in the chain."
|
||||||
IKSOLVER_Fabrik = 0x2,
|
IKSOLVER_Fabrik = 0x2,
|
||||||
// MPropertyFriendlyName "Dog Leg (3 Bone)"
|
// MPropertyFriendlyName "Dog Leg (3-Bone)"
|
||||||
|
// MPropertyDescription "A 3-bone solver that uses two 2-bone solves under the hood to emulate a dog leg."
|
||||||
IKSOLVER_DogLeg3Bone = 0x3,
|
IKSOLVER_DogLeg3Bone = 0x3,
|
||||||
// MPropertyFriendlyName "CCD"
|
// MPropertyFriendlyName "CCD"
|
||||||
|
// MPropertyDescription "Cyclic Coordinate Descent solver - A solver that can handle any number of bones and works by iteratively solving for the rotation of each bone in the chain."
|
||||||
IKSOLVER_CCD = 0x4,
|
IKSOLVER_CCD = 0x4,
|
||||||
// MPropertySuppressEnumerator
|
// MPropertySuppressEnumerator
|
||||||
IKSOLVER_COUNT = 0x5,
|
IKSOLVER_COUNT = 0x5,
|
||||||
|
@ -16,7 +16,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x10
|
// Registered alignment: 0x10
|
||||||
// Alignment: 0x10
|
// Alignment: 0x10
|
||||||
// Standard-layout class: true
|
// Standard-layout class: true
|
||||||
// Size: 0xc0
|
// Size: 0xd0
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
#pragma pack(push, 1)
|
#pragma pack(push, 1)
|
||||||
@ -27,30 +27,30 @@ namespace source2sdk::animgraphlib
|
|||||||
animgraphlib::CAnimInputDamping m_damping; // 0x80
|
animgraphlib::CAnimInputDamping m_damping; // 0x80
|
||||||
// m_bones has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_bones has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::LookAtBone_t> m_bones;
|
// CUtlVector<animgraphlib::LookAtBone_t> m_bones;
|
||||||
char m_bones[0x18]; // 0x90
|
char m_bones[0x18]; // 0x98
|
||||||
float m_flYawLimit; // 0xa8
|
float m_flYawLimit; // 0xb0
|
||||||
float m_flPitchLimit; // 0xac
|
float m_flPitchLimit; // 0xb4
|
||||||
float m_flHysteresisInnerAngle; // 0xb0
|
float m_flHysteresisInnerAngle; // 0xb8
|
||||||
float m_flHysteresisOuterAngle; // 0xb4
|
float m_flHysteresisOuterAngle; // 0xbc
|
||||||
bool m_bRotateYawForward; // 0xb8
|
bool m_bRotateYawForward; // 0xc0
|
||||||
bool m_bMaintainUpDirection; // 0xb9
|
bool m_bMaintainUpDirection; // 0xc1
|
||||||
bool m_bTargetIsPosition; // 0xba
|
bool m_bTargetIsPosition; // 0xc2
|
||||||
bool m_bUseHysteresis; // 0xbb
|
bool m_bUseHysteresis; // 0xc3
|
||||||
[[maybe_unused]] std::uint8_t pad_0xbc[0x4];
|
[[maybe_unused]] std::uint8_t pad_0xc4[0xc];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(offsetof(LookAtOpFixedSettings_t, m_attachment) == 0x0);
|
static_assert(offsetof(LookAtOpFixedSettings_t, m_attachment) == 0x0);
|
||||||
static_assert(offsetof(LookAtOpFixedSettings_t, m_damping) == 0x80);
|
static_assert(offsetof(LookAtOpFixedSettings_t, m_damping) == 0x80);
|
||||||
static_assert(offsetof(LookAtOpFixedSettings_t, m_bones) == 0x90);
|
static_assert(offsetof(LookAtOpFixedSettings_t, m_bones) == 0x98);
|
||||||
static_assert(offsetof(LookAtOpFixedSettings_t, m_flYawLimit) == 0xa8);
|
static_assert(offsetof(LookAtOpFixedSettings_t, m_flYawLimit) == 0xb0);
|
||||||
static_assert(offsetof(LookAtOpFixedSettings_t, m_flPitchLimit) == 0xac);
|
static_assert(offsetof(LookAtOpFixedSettings_t, m_flPitchLimit) == 0xb4);
|
||||||
static_assert(offsetof(LookAtOpFixedSettings_t, m_flHysteresisInnerAngle) == 0xb0);
|
static_assert(offsetof(LookAtOpFixedSettings_t, m_flHysteresisInnerAngle) == 0xb8);
|
||||||
static_assert(offsetof(LookAtOpFixedSettings_t, m_flHysteresisOuterAngle) == 0xb4);
|
static_assert(offsetof(LookAtOpFixedSettings_t, m_flHysteresisOuterAngle) == 0xbc);
|
||||||
static_assert(offsetof(LookAtOpFixedSettings_t, m_bRotateYawForward) == 0xb8);
|
static_assert(offsetof(LookAtOpFixedSettings_t, m_bRotateYawForward) == 0xc0);
|
||||||
static_assert(offsetof(LookAtOpFixedSettings_t, m_bMaintainUpDirection) == 0xb9);
|
static_assert(offsetof(LookAtOpFixedSettings_t, m_bMaintainUpDirection) == 0xc1);
|
||||||
static_assert(offsetof(LookAtOpFixedSettings_t, m_bTargetIsPosition) == 0xba);
|
static_assert(offsetof(LookAtOpFixedSettings_t, m_bTargetIsPosition) == 0xc2);
|
||||||
static_assert(offsetof(LookAtOpFixedSettings_t, m_bUseHysteresis) == 0xbb);
|
static_assert(offsetof(LookAtOpFixedSettings_t, m_bUseHysteresis) == 0xc3);
|
||||||
|
|
||||||
static_assert(sizeof(LookAtOpFixedSettings_t) == 0xc0);
|
static_assert(sizeof(LookAtOpFixedSettings_t) == 0xd0);
|
||||||
};
|
};
|
||||||
|
@ -0,0 +1,23 @@
|
|||||||
|
#pragma once
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animgraphlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animgraphlib
|
||||||
|
{
|
||||||
|
// Enumerator count: 3
|
||||||
|
// Alignment: 4
|
||||||
|
// Size: 0x4
|
||||||
|
enum class OrientationWarpMode_t : std::uint32_t
|
||||||
|
{
|
||||||
|
// MPropertySuppressEnumerator
|
||||||
|
eInvalid = 0x0,
|
||||||
|
// MPropertyFriendlyName "Angle"
|
||||||
|
eAngle = 0x1,
|
||||||
|
// MPropertyFriendlyName "World Position"
|
||||||
|
eWorldPosition = 0x2,
|
||||||
|
};
|
||||||
|
};
|
@ -0,0 +1,23 @@
|
|||||||
|
#pragma once
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animgraphlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animgraphlib
|
||||||
|
{
|
||||||
|
// Enumerator count: 3
|
||||||
|
// Alignment: 4
|
||||||
|
// Size: 0x4
|
||||||
|
enum class OrientationWarpRootMotionSource_t : std::uint32_t
|
||||||
|
{
|
||||||
|
// MPropertyFriendlyName "Animation Or Procedural"
|
||||||
|
eAnimationOrProcedural = 0x0,
|
||||||
|
// MPropertyFriendlyName "Animation Only"
|
||||||
|
eAnimationOnly = 0x1,
|
||||||
|
// MPropertyFriendlyName "Procedural Only"
|
||||||
|
eProceduralOnly = 0x2,
|
||||||
|
};
|
||||||
|
};
|
@ -0,0 +1,25 @@
|
|||||||
|
#pragma once
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animgraphlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animgraphlib
|
||||||
|
{
|
||||||
|
// Enumerator count: 4
|
||||||
|
// Alignment: 4
|
||||||
|
// Size: 0x4
|
||||||
|
enum class OrientationWarpTargetOffsetMode_t : std::uint32_t
|
||||||
|
{
|
||||||
|
// MPropertyFriendlyName "Literal Value"
|
||||||
|
eLiteralValue = 0x0,
|
||||||
|
// MPropertyFriendlyName "Parameter"
|
||||||
|
eParameter = 0x1,
|
||||||
|
// MPropertyFriendlyName "Animation Movement Heading"
|
||||||
|
eAnimationMovementHeading = 0x2,
|
||||||
|
// MPropertyFriendlyName "Animation Movement Heading At End"
|
||||||
|
eAnimationMovementHeadingAtEnd = 0x3,
|
||||||
|
};
|
||||||
|
};
|
@ -14,7 +14,7 @@ namespace source2sdk::animgraphlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: true
|
// Standard-layout class: true
|
||||||
// Size: 0x20
|
// Size: 0x18
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
#pragma pack(push, 1)
|
#pragma pack(push, 1)
|
||||||
@ -24,13 +24,10 @@ namespace source2sdk::animgraphlib
|
|||||||
// m_ChainsToSolveData has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_ChainsToSolveData has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animgraphlib::ChainToSolveData_t> m_ChainsToSolveData;
|
// CUtlVector<animgraphlib::ChainToSolveData_t> m_ChainsToSolveData;
|
||||||
char m_ChainsToSolveData[0x18]; // 0x0
|
char m_ChainsToSolveData[0x18]; // 0x0
|
||||||
bool m_bMatchTargetOrientation; // 0x18
|
|
||||||
[[maybe_unused]] std::uint8_t pad_0x19[0x7];
|
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(offsetof(SolveIKChainPoseOpFixedSettings_t, m_ChainsToSolveData) == 0x0);
|
static_assert(offsetof(SolveIKChainPoseOpFixedSettings_t, m_ChainsToSolveData) == 0x0);
|
||||||
static_assert(offsetof(SolveIKChainPoseOpFixedSettings_t, m_bMatchTargetOrientation) == 0x18);
|
|
||||||
|
|
||||||
static_assert(sizeof(SolveIKChainPoseOpFixedSettings_t) == 0x20);
|
static_assert(sizeof(SolveIKChainPoseOpFixedSettings_t) == 0x18);
|
||||||
};
|
};
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
namespace source2sdk::animgraphlib
|
namespace source2sdk::animgraphlib
|
||||||
{
|
{
|
||||||
// Enumerator count: 4
|
// Enumerator count: 5
|
||||||
// Alignment: 4
|
// Alignment: 4
|
||||||
// Size: 0x4
|
// Size: 0x4
|
||||||
enum class StateActionBehavior : std::uint32_t
|
enum class StateActionBehavior : std::uint32_t
|
||||||
@ -17,5 +17,6 @@ namespace source2sdk::animgraphlib
|
|||||||
STATETAGBEHAVIOR_FIRE_ON_ENTER = 0x1,
|
STATETAGBEHAVIOR_FIRE_ON_ENTER = 0x1,
|
||||||
STATETAGBEHAVIOR_FIRE_ON_EXIT = 0x2,
|
STATETAGBEHAVIOR_FIRE_ON_EXIT = 0x2,
|
||||||
STATETAGBEHAVIOR_FIRE_ON_ENTER_AND_EXIT = 0x3,
|
STATETAGBEHAVIOR_FIRE_ON_ENTER_AND_EXIT = 0x3,
|
||||||
|
STATETAGBEHAVIOR_ACTIVE_WHILE_FULLY_BLENDED = 0x4,
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -22,9 +22,6 @@ namespace source2sdk::animlib
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
uint32_t m_flags; // 0x0
|
uint32_t m_flags; // 0x0
|
||||||
|
|
||||||
// Static fields:
|
|
||||||
static uint8_t &Get_MaxFlags() {return *reinterpret_cast<uint8_t*>(interfaces::g_schema->FindTypeScopeForModule("!GlobalTypes")->FindDeclaredClass("CNmBitFlags")->GetStaticFields()[0]->m_pInstance);};
|
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
@ -0,0 +1,34 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "source2sdk/source2gen.hpp"
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animlib
|
||||||
|
{
|
||||||
|
// Registered alignment: 0x8
|
||||||
|
// Alignment: 0x8
|
||||||
|
// Standard-layout class: true
|
||||||
|
// Size: 0x20
|
||||||
|
//
|
||||||
|
// static metadata: MGetKV3ClassDefaults
|
||||||
|
#pragma pack(push, 1)
|
||||||
|
struct CNmBoneMask__SerializedData_t
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
CGlobalSymbol m_ID; // 0x0
|
||||||
|
// m_weights has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
|
// CUtlVector<float> m_weights;
|
||||||
|
char m_weights[0x18]; // 0x8
|
||||||
|
};
|
||||||
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
static_assert(offsetof(CNmBoneMask__SerializedData_t, m_ID) == 0x0);
|
||||||
|
static_assert(offsetof(CNmBoneMask__SerializedData_t, m_weights) == 0x8);
|
||||||
|
|
||||||
|
static_assert(sizeof(CNmBoneMask__SerializedData_t) == 0x20);
|
||||||
|
};
|
@ -14,16 +14,16 @@ namespace source2sdk::animlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x40
|
// Size: 0x38
|
||||||
// Has VTable
|
// Has VTable
|
||||||
#pragma pack(push, 1)
|
#pragma pack(push, 1)
|
||||||
class CNmCachedPoseReadTask : public animlib::CNmTask
|
class CNmCachedPoseReadTask : public animlib::CNmTask
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x30[0x10];
|
[[maybe_unused]] std::uint8_t pad_0x30[0x8];
|
||||||
// No schema binary for binding
|
// No schema binary for binding
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(sizeof(CNmCachedPoseReadTask) == 0x40);
|
static_assert(sizeof(CNmCachedPoseReadTask) == 0x38);
|
||||||
};
|
};
|
||||||
|
@ -14,16 +14,16 @@ namespace source2sdk::animlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x40
|
// Size: 0x38
|
||||||
// Has VTable
|
// Has VTable
|
||||||
#pragma pack(push, 1)
|
#pragma pack(push, 1)
|
||||||
class CNmCachedPoseWriteTask : public animlib::CNmTask
|
class CNmCachedPoseWriteTask : public animlib::CNmTask
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
[[maybe_unused]] std::uint8_t pad_0x30[0x10];
|
[[maybe_unused]] std::uint8_t pad_0x30[0x8];
|
||||||
// No schema binary for binding
|
// No schema binary for binding
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(sizeof(CNmCachedPoseWriteTask) == 0x40);
|
static_assert(sizeof(CNmCachedPoseWriteTask) == 0x38);
|
||||||
};
|
};
|
||||||
|
43
sdk/include/source2sdk/animlib/CNmChainSolverTask.hpp
Normal file
43
sdk/include/source2sdk/animlib/CNmChainSolverTask.hpp
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "source2sdk/animlib/CNmTarget.hpp"
|
||||||
|
#include "source2sdk/animlib/CNmTask.hpp"
|
||||||
|
#include "source2sdk/source2gen.hpp"
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animlib
|
||||||
|
{
|
||||||
|
// Registered alignment: 0x10
|
||||||
|
// Alignment: 0x10
|
||||||
|
// Standard-layout class: false
|
||||||
|
// Size: 0x100
|
||||||
|
// Has VTable
|
||||||
|
#pragma pack(push, 1)
|
||||||
|
class CNmChainSolverTask : public animlib::CNmTask
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
int32_t m_nEffectorBoneIdx; // 0x30
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x34[0xc]; // 0x34
|
||||||
|
CTransform m_targetTransform; // 0x40
|
||||||
|
int32_t m_nNumBonesInChain; // 0x60
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x64[0xc]; // 0x64
|
||||||
|
animlib::CNmTarget m_effectorTarget; // 0x70
|
||||||
|
bool m_bIsTargetInWorldSpace; // 0xa0
|
||||||
|
bool m_bIsRunningFromDeserializedData; // 0xa1
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0xa2[0x6]; // 0xa2
|
||||||
|
CGlobalSymbol m_debugEffectorBoneID; // 0xa8
|
||||||
|
CTransform m_chainStartTransformMS; // 0xb0
|
||||||
|
CTransform m_debugRequestedTargetTransformMS; // 0xd0
|
||||||
|
float m_debugTotalChainLength; // 0xf0
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0xf4[0xc];
|
||||||
|
};
|
||||||
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
// Cannot assert offsets of fields in CNmChainSolverTask because it is not a standard-layout class
|
||||||
|
static_assert(sizeof(CNmChainSolverTask) == 0x100);
|
||||||
|
};
|
@ -36,7 +36,10 @@ namespace source2sdk::animlib
|
|||||||
// m_compressedPoseOffsets has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_compressedPoseOffsets has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<uint32_t> m_compressedPoseOffsets;
|
// CUtlVector<uint32_t> m_compressedPoseOffsets;
|
||||||
char m_compressedPoseOffsets[0x18]; // 0x40
|
char m_compressedPoseOffsets[0x18]; // 0x40
|
||||||
[[maybe_unused]] std::uint8_t pad_0x58[0x48]; // 0x58
|
[[maybe_unused]] std::uint8_t pad_0x58[0x28]; // 0x58
|
||||||
|
// m_secondaryAnimations has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
|
// CUtlVectorFixedGrowable<animlib::CNmClip*,1> m_secondaryAnimations;
|
||||||
|
char m_secondaryAnimations[0x20]; // 0x80
|
||||||
animlib::CNmSyncTrack m_syncTrack; // 0xa0
|
animlib::CNmSyncTrack m_syncTrack; // 0xa0
|
||||||
animlib::CNmRootMotionData m_rootMotion; // 0x150
|
animlib::CNmRootMotionData m_rootMotion; // 0x150
|
||||||
bool m_bIsAdditive; // 0x1a0
|
bool m_bIsAdditive; // 0x1a0
|
||||||
@ -50,6 +53,7 @@ namespace source2sdk::animlib
|
|||||||
static_assert(offsetof(CNmClip, m_compressedPoseData) == 0x10);
|
static_assert(offsetof(CNmClip, m_compressedPoseData) == 0x10);
|
||||||
static_assert(offsetof(CNmClip, m_trackCompressionSettings) == 0x28);
|
static_assert(offsetof(CNmClip, m_trackCompressionSettings) == 0x28);
|
||||||
static_assert(offsetof(CNmClip, m_compressedPoseOffsets) == 0x40);
|
static_assert(offsetof(CNmClip, m_compressedPoseOffsets) == 0x40);
|
||||||
|
static_assert(offsetof(CNmClip, m_secondaryAnimations) == 0x80);
|
||||||
static_assert(offsetof(CNmClip, m_syncTrack) == 0xa0);
|
static_assert(offsetof(CNmClip, m_syncTrack) == 0xa0);
|
||||||
static_assert(offsetof(CNmClip, m_rootMotion) == 0x150);
|
static_assert(offsetof(CNmClip, m_rootMotion) == 0x150);
|
||||||
static_assert(offsetof(CNmClip, m_bIsAdditive) == 0x1a0);
|
static_assert(offsetof(CNmClip, m_bIsAdditive) == 0x1a0);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "source2sdk/animlib/CNmPoseNode__CDefinition.hpp"
|
#include "source2sdk/animlib/CNmClipReferenceNode__CDefinition.hpp"
|
||||||
#include "source2sdk/source2gen.hpp"
|
#include "source2sdk/source2gen.hpp"
|
||||||
#include <cstddef>
|
#include <cstddef>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
@ -14,22 +14,24 @@ namespace source2sdk::animlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x18
|
// Size: 0x20
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
#pragma pack(push, 1)
|
#pragma pack(push, 1)
|
||||||
class CNmClipNode__CDefinition : public animlib::CNmPoseNode__CDefinition
|
class CNmClipNode__CDefinition : public animlib::CNmClipReferenceNode__CDefinition
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
int16_t m_nPlayInReverseValueNodeIdx; // 0x10
|
int16_t m_nPlayInReverseValueNodeIdx; // 0x10
|
||||||
int16_t m_nResetTimeValueNodeIdx; // 0x12
|
int16_t m_nResetTimeValueNodeIdx; // 0x12
|
||||||
bool m_bSampleRootMotion; // 0x14
|
float m_flSpeedMultiplier; // 0x14
|
||||||
bool m_bAllowLooping; // 0x15
|
int32_t m_nStartSyncEventOffset; // 0x18
|
||||||
int16_t m_nDataSlotIdx; // 0x16
|
bool m_bSampleRootMotion; // 0x1c
|
||||||
|
bool m_bAllowLooping; // 0x1d
|
||||||
|
int16_t m_nDataSlotIdx; // 0x1e
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CNmClipNode::CDefinition because it is not a standard-layout class
|
// Cannot assert offsets of fields in CNmClipNode::CDefinition because it is not a standard-layout class
|
||||||
static_assert(sizeof(CNmClipNode__CDefinition) == 0x18);
|
static_assert(sizeof(CNmClipNode__CDefinition) == 0x20);
|
||||||
};
|
};
|
||||||
|
@ -0,0 +1,30 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "source2sdk/animlib/CNmPoseNode__CDefinition.hpp"
|
||||||
|
#include "source2sdk/source2gen.hpp"
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animlib
|
||||||
|
{
|
||||||
|
// Registered alignment: unknown
|
||||||
|
// Alignment: 0x2
|
||||||
|
// Standard-layout class: false
|
||||||
|
// Size: 0x10
|
||||||
|
// Has VTable
|
||||||
|
// Is Abstract
|
||||||
|
//
|
||||||
|
// static metadata: MGetKV3ClassDefaults
|
||||||
|
#pragma pack(push, 1)
|
||||||
|
class CNmClipReferenceNode__CDefinition : public animlib::CNmPoseNode__CDefinition
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
};
|
||||||
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
static_assert(sizeof(CNmClipReferenceNode__CDefinition) == 0x10);
|
||||||
|
};
|
@ -1,5 +1,5 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "source2sdk/animlib/CNmPoseNode__CDefinition.hpp"
|
#include "source2sdk/animlib/CNmClipReferenceNode__CDefinition.hpp"
|
||||||
#include "source2sdk/source2gen.hpp"
|
#include "source2sdk/source2gen.hpp"
|
||||||
#include <cstddef>
|
#include <cstddef>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
@ -19,7 +19,7 @@ namespace source2sdk::animlib
|
|||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
#pragma pack(push, 1)
|
#pragma pack(push, 1)
|
||||||
class CNmClipSelectorNode__CDefinition : public animlib::CNmPoseNode__CDefinition
|
class CNmClipSelectorNode__CDefinition : public animlib::CNmClipReferenceNode__CDefinition
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
// m_optionNodeIndices has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_optionNodeIndices has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
|
@ -23,7 +23,8 @@ namespace source2sdk::animlib
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
int16_t m_nSourceStateNodeIdx; // 0x10
|
int16_t m_nSourceStateNodeIdx; // 0x10
|
||||||
[[maybe_unused]] std::uint8_t pad_0x12[0x6];
|
bool m_bOnlyReturnPercentageThrough; // 0x12
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x13[0x5];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
namespace source2sdk::animlib
|
namespace source2sdk::animlib
|
||||||
{
|
{
|
||||||
// Enumerator count: 4
|
// Enumerator count: 5
|
||||||
// Alignment: 1
|
// Alignment: 1
|
||||||
// Size: 0x1
|
// Size: 0x1
|
||||||
enum class CNmFloatMathNode__Operator_t : std::uint8_t
|
enum class CNmFloatMathNode__Operator_t : std::uint8_t
|
||||||
@ -17,5 +17,6 @@ namespace source2sdk::animlib
|
|||||||
Sub = 1,
|
Sub = 1,
|
||||||
Mul = 2,
|
Mul = 2,
|
||||||
Div = 3,
|
Div = 3,
|
||||||
|
Mod = 4,
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "source2sdk/animlib/CNmPoseNode__CDefinition.hpp"
|
#include "source2sdk/animlib/CNmPassthroughNode__CDefinition.hpp"
|
||||||
#include "source2sdk/source2gen.hpp"
|
#include "source2sdk/source2gen.hpp"
|
||||||
#include <cstddef>
|
#include <cstddef>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
@ -14,19 +14,19 @@ namespace source2sdk::animlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: false
|
// Standard-layout class: false
|
||||||
// Size: 0x18
|
// Size: 0x28
|
||||||
// Has VTable
|
// Has VTable
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
#pragma pack(push, 1)
|
#pragma pack(push, 1)
|
||||||
class CNmChildGraphNode__CDefinition : public animlib::CNmPoseNode__CDefinition
|
class CNmFollowBoneNode__CDefinition : public animlib::CNmPassthroughNode__CDefinition
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
int16_t m_nChildGraphIdx; // 0x10
|
CGlobalSymbol m_bone; // 0x18
|
||||||
[[maybe_unused]] std::uint8_t pad_0x12[0x6];
|
CGlobalSymbol m_followTargetBone; // 0x20
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CNmChildGraphNode::CDefinition because it is not a standard-layout class
|
// Cannot assert offsets of fields in CNmFollowBoneNode::CDefinition because it is not a standard-layout class
|
||||||
static_assert(sizeof(CNmChildGraphNode__CDefinition) == 0x18);
|
static_assert(sizeof(CNmFollowBoneNode__CDefinition) == 0x28);
|
||||||
};
|
};
|
29
sdk/include/source2sdk/animlib/CNmFollowBoneTask.hpp
Normal file
29
sdk/include/source2sdk/animlib/CNmFollowBoneTask.hpp
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "source2sdk/animlib/CNmTask.hpp"
|
||||||
|
#include "source2sdk/source2gen.hpp"
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animlib
|
||||||
|
{
|
||||||
|
// Registered alignment: 0x8
|
||||||
|
// Alignment: 0x8
|
||||||
|
// Standard-layout class: false
|
||||||
|
// Size: 0x48
|
||||||
|
// Has VTable
|
||||||
|
#pragma pack(push, 1)
|
||||||
|
class CNmFollowBoneTask : public animlib::CNmTask
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x30[0x18];
|
||||||
|
// No schema binary for binding
|
||||||
|
};
|
||||||
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
static_assert(sizeof(CNmFollowBoneTask) == 0x48);
|
||||||
|
};
|
@ -1,40 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
#include "source2sdk/resourcesystem/InfoForResourceTypeCNmSkeleton.hpp"
|
|
||||||
#include "source2sdk/source2gen.hpp"
|
|
||||||
#include <cstddef>
|
|
||||||
#include <cstdint>
|
|
||||||
|
|
||||||
// /////////////////////////////////////////////////////////////
|
|
||||||
// Module: animlib
|
|
||||||
// Created using source2gen - github.com/neverlosecc/source2gen
|
|
||||||
// /////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
namespace source2sdk::animlib
|
|
||||||
{
|
|
||||||
// Registered alignment: 0x8
|
|
||||||
// Alignment: 0x8
|
|
||||||
// Standard-layout class: true
|
|
||||||
// Size: 0x50
|
|
||||||
//
|
|
||||||
// static metadata: MGetKV3ClassDefaults
|
|
||||||
#pragma pack(push, 1)
|
|
||||||
class CNmGraphDataSet
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
CGlobalSymbol m_variationID; // 0x0
|
|
||||||
// m_skeleton has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
|
||||||
// CStrongHandle<resourcesystem::InfoForResourceTypeCNmSkeleton> m_skeleton;
|
|
||||||
char m_skeleton[0x8]; // 0x8
|
|
||||||
// m_resources has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
|
||||||
// CUtlVector<CStrongHandleVoid> m_resources;
|
|
||||||
char m_resources[0x18]; // 0x10
|
|
||||||
[[maybe_unused]] std::uint8_t pad_0x28[0x28];
|
|
||||||
};
|
|
||||||
#pragma pack(pop)
|
|
||||||
|
|
||||||
static_assert(offsetof(CNmGraphDataSet, m_variationID) == 0x0);
|
|
||||||
static_assert(offsetof(CNmGraphDataSet, m_skeleton) == 0x8);
|
|
||||||
static_assert(offsetof(CNmGraphDataSet, m_resources) == 0x10);
|
|
||||||
|
|
||||||
static_assert(sizeof(CNmGraphDataSet) == 0x50);
|
|
||||||
};
|
|
@ -1,6 +1,7 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "source2sdk/animlib/CNmGraphDefinition__ChildGraphSlot_t.hpp"
|
|
||||||
#include "source2sdk/animlib/CNmGraphDefinition__ExternalGraphSlot_t.hpp"
|
#include "source2sdk/animlib/CNmGraphDefinition__ExternalGraphSlot_t.hpp"
|
||||||
|
#include "source2sdk/animlib/CNmGraphDefinition__ReferencedGraphSlot_t.hpp"
|
||||||
|
#include "source2sdk/resourcesystem/InfoForResourceTypeCNmSkeleton.hpp"
|
||||||
#include "source2sdk/source2gen.hpp"
|
#include "source2sdk/source2gen.hpp"
|
||||||
#include <cstddef>
|
#include <cstddef>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
@ -15,50 +16,61 @@ namespace source2sdk::animlib
|
|||||||
// Registered alignment: 0x8
|
// Registered alignment: 0x8
|
||||||
// Alignment: 0x8
|
// Alignment: 0x8
|
||||||
// Standard-layout class: true
|
// Standard-layout class: true
|
||||||
// Size: 0x130
|
// Size: 0x190
|
||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
#pragma pack(push, 1)
|
#pragma pack(push, 1)
|
||||||
class CNmGraphDefinition
|
class CNmGraphDefinition
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
CGlobalSymbol m_variationID; // 0x0
|
||||||
|
// m_skeleton has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
|
// CStrongHandle<resourcesystem::InfoForResourceTypeCNmSkeleton> m_skeleton;
|
||||||
|
char m_skeleton[0x8]; // 0x8
|
||||||
|
V_uuid_t m_runtimeVersionID; // 0x10
|
||||||
// m_persistentNodeIndices has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_persistentNodeIndices has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<int16_t> m_persistentNodeIndices;
|
// CUtlVector<int16_t> m_persistentNodeIndices;
|
||||||
char m_persistentNodeIndices[0x18]; // 0x0
|
char m_persistentNodeIndices[0x18]; // 0x20
|
||||||
int16_t m_nRootNodeIdx; // 0x18
|
int16_t m_nRootNodeIdx; // 0x38
|
||||||
[[maybe_unused]] std::uint8_t pad_0x1a[0x6]; // 0x1a
|
[[maybe_unused]] std::uint8_t pad_0x3a[0x6]; // 0x3a
|
||||||
// m_controlParameterIDs has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_controlParameterIDs has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<CGlobalSymbol> m_controlParameterIDs;
|
// CUtlVector<CGlobalSymbol> m_controlParameterIDs;
|
||||||
char m_controlParameterIDs[0x18]; // 0x20
|
char m_controlParameterIDs[0x18]; // 0x40
|
||||||
// m_virtualParameterIDs has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_virtualParameterIDs has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<CGlobalSymbol> m_virtualParameterIDs;
|
// CUtlVector<CGlobalSymbol> m_virtualParameterIDs;
|
||||||
char m_virtualParameterIDs[0x18]; // 0x38
|
char m_virtualParameterIDs[0x18]; // 0x58
|
||||||
// m_virtualParameterNodeIndices has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_virtualParameterNodeIndices has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<int16_t> m_virtualParameterNodeIndices;
|
// CUtlVector<int16_t> m_virtualParameterNodeIndices;
|
||||||
char m_virtualParameterNodeIndices[0x18]; // 0x50
|
char m_virtualParameterNodeIndices[0x18]; // 0x70
|
||||||
// m_childGraphSlots has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_referencedGraphSlots has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animlib::CNmGraphDefinition__ChildGraphSlot_t> m_childGraphSlots;
|
// CUtlVector<animlib::CNmGraphDefinition__ReferencedGraphSlot_t> m_referencedGraphSlots;
|
||||||
char m_childGraphSlots[0x18]; // 0x68
|
char m_referencedGraphSlots[0x18]; // 0x88
|
||||||
// m_externalGraphSlots has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_externalGraphSlots has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<animlib::CNmGraphDefinition__ExternalGraphSlot_t> m_externalGraphSlots;
|
// CUtlVector<animlib::CNmGraphDefinition__ExternalGraphSlot_t> m_externalGraphSlots;
|
||||||
char m_externalGraphSlots[0x18]; // 0x80
|
char m_externalGraphSlots[0x18]; // 0xa0
|
||||||
[[maybe_unused]] std::uint8_t pad_0x98[0x70]; // 0x98
|
[[maybe_unused]] std::uint8_t pad_0xb8[0x70]; // 0xb8
|
||||||
// m_nodePaths has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_nodePaths has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVector<CUtlString> m_nodePaths;
|
// CUtlVector<CUtlString> m_nodePaths;
|
||||||
char m_nodePaths[0x18]; // 0x108
|
char m_nodePaths[0x18]; // 0x128
|
||||||
V_uuid_t m_runtimeVersionID; // 0x120
|
// m_resources has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
|
// CUtlVector<CStrongHandleVoid> m_resources;
|
||||||
|
char m_resources[0x18]; // 0x140
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x158[0x38];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(offsetof(CNmGraphDefinition, m_persistentNodeIndices) == 0x0);
|
static_assert(offsetof(CNmGraphDefinition, m_variationID) == 0x0);
|
||||||
static_assert(offsetof(CNmGraphDefinition, m_nRootNodeIdx) == 0x18);
|
static_assert(offsetof(CNmGraphDefinition, m_skeleton) == 0x8);
|
||||||
static_assert(offsetof(CNmGraphDefinition, m_controlParameterIDs) == 0x20);
|
static_assert(offsetof(CNmGraphDefinition, m_runtimeVersionID) == 0x10);
|
||||||
static_assert(offsetof(CNmGraphDefinition, m_virtualParameterIDs) == 0x38);
|
static_assert(offsetof(CNmGraphDefinition, m_persistentNodeIndices) == 0x20);
|
||||||
static_assert(offsetof(CNmGraphDefinition, m_virtualParameterNodeIndices) == 0x50);
|
static_assert(offsetof(CNmGraphDefinition, m_nRootNodeIdx) == 0x38);
|
||||||
static_assert(offsetof(CNmGraphDefinition, m_childGraphSlots) == 0x68);
|
static_assert(offsetof(CNmGraphDefinition, m_controlParameterIDs) == 0x40);
|
||||||
static_assert(offsetof(CNmGraphDefinition, m_externalGraphSlots) == 0x80);
|
static_assert(offsetof(CNmGraphDefinition, m_virtualParameterIDs) == 0x58);
|
||||||
static_assert(offsetof(CNmGraphDefinition, m_nodePaths) == 0x108);
|
static_assert(offsetof(CNmGraphDefinition, m_virtualParameterNodeIndices) == 0x70);
|
||||||
static_assert(offsetof(CNmGraphDefinition, m_runtimeVersionID) == 0x120);
|
static_assert(offsetof(CNmGraphDefinition, m_referencedGraphSlots) == 0x88);
|
||||||
|
static_assert(offsetof(CNmGraphDefinition, m_externalGraphSlots) == 0xa0);
|
||||||
|
static_assert(offsetof(CNmGraphDefinition, m_nodePaths) == 0x128);
|
||||||
|
static_assert(offsetof(CNmGraphDefinition, m_resources) == 0x140);
|
||||||
|
|
||||||
static_assert(sizeof(CNmGraphDefinition) == 0x130);
|
static_assert(sizeof(CNmGraphDefinition) == 0x190);
|
||||||
};
|
};
|
||||||
|
@ -18,7 +18,7 @@ namespace source2sdk::animlib
|
|||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
#pragma pack(push, 1)
|
#pragma pack(push, 1)
|
||||||
struct CNmGraphDefinition__ChildGraphSlot_t
|
struct CNmGraphDefinition__ReferencedGraphSlot_t
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
int16_t m_nNodeIdx; // 0x0
|
int16_t m_nNodeIdx; // 0x0
|
||||||
@ -26,8 +26,8 @@ namespace source2sdk::animlib
|
|||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(offsetof(CNmGraphDefinition__ChildGraphSlot_t, m_nNodeIdx) == 0x0);
|
static_assert(offsetof(CNmGraphDefinition__ReferencedGraphSlot_t, m_nNodeIdx) == 0x0);
|
||||||
static_assert(offsetof(CNmGraphDefinition__ChildGraphSlot_t, m_dataSlotIdx) == 0x2);
|
static_assert(offsetof(CNmGraphDefinition__ReferencedGraphSlot_t, m_dataSlotIdx) == 0x2);
|
||||||
|
|
||||||
static_assert(sizeof(CNmGraphDefinition__ChildGraphSlot_t) == 0x4);
|
static_assert(sizeof(CNmGraphDefinition__ReferencedGraphSlot_t) == 0x4);
|
||||||
};
|
};
|
@ -1,7 +1,7 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "source2sdk/animlib/CNmBitFlags.hpp"
|
#include "source2sdk/animlib/CNmBitFlags.hpp"
|
||||||
#include "source2sdk/animlib/CNmBoolValueNode__CDefinition.hpp"
|
#include "source2sdk/animlib/CNmBoolValueNode__CDefinition.hpp"
|
||||||
#include "source2sdk/animlib/CNmStateEventConditionNode__Condition_t.hpp"
|
#include "source2sdk/animlib/CNmGraphEventConditionNode__Condition_t.hpp"
|
||||||
#include "source2sdk/source2gen.hpp"
|
#include "source2sdk/source2gen.hpp"
|
||||||
#include <cstddef>
|
#include <cstddef>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
@ -21,18 +21,18 @@ namespace source2sdk::animlib
|
|||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
#pragma pack(push, 1)
|
#pragma pack(push, 1)
|
||||||
class CNmStateEventConditionNode__CDefinition : public animlib::CNmBoolValueNode__CDefinition
|
class CNmGraphEventConditionNode__CDefinition : public animlib::CNmBoolValueNode__CDefinition
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
int16_t m_nSourceStateNodeIdx; // 0x10
|
int16_t m_nSourceStateNodeIdx; // 0x10
|
||||||
[[maybe_unused]] std::uint8_t pad_0x12[0x2]; // 0x12
|
[[maybe_unused]] std::uint8_t pad_0x12[0x2]; // 0x12
|
||||||
animlib::CNmBitFlags m_eventConditionRules; // 0x14
|
animlib::CNmBitFlags m_eventConditionRules; // 0x14
|
||||||
// m_conditions has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
// m_conditions has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
// CUtlVectorFixedGrowable<animlib::CNmStateEventConditionNode__Condition_t,5> m_conditions;
|
// CUtlVectorFixedGrowable<animlib::CNmGraphEventConditionNode__Condition_t,5> m_conditions;
|
||||||
char m_conditions[0x68]; // 0x18
|
char m_conditions[0x68]; // 0x18
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
// Cannot assert offsets of fields in CNmStateEventConditionNode::CDefinition because it is not a standard-layout class
|
// Cannot assert offsets of fields in CNmGraphEventConditionNode::CDefinition because it is not a standard-layout class
|
||||||
static_assert(sizeof(CNmStateEventConditionNode__CDefinition) == 0x80);
|
static_assert(sizeof(CNmGraphEventConditionNode__CDefinition) == 0x80);
|
||||||
};
|
};
|
@ -1,5 +1,5 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "source2sdk/animlib/NmStateEventTypeCondition_t.hpp"
|
#include "source2sdk/animlib/NmGraphEventTypeCondition_t.hpp"
|
||||||
#include "source2sdk/source2gen.hpp"
|
#include "source2sdk/source2gen.hpp"
|
||||||
#include <cstddef>
|
#include <cstddef>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
@ -19,17 +19,17 @@ namespace source2sdk::animlib
|
|||||||
//
|
//
|
||||||
// static metadata: MGetKV3ClassDefaults
|
// static metadata: MGetKV3ClassDefaults
|
||||||
#pragma pack(push, 1)
|
#pragma pack(push, 1)
|
||||||
struct CNmStateEventConditionNode__Condition_t
|
struct CNmGraphEventConditionNode__Condition_t
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
CGlobalSymbol m_eventID; // 0x0
|
CGlobalSymbol m_eventID; // 0x0
|
||||||
animlib::NmStateEventTypeCondition_t m_eventTypeCondition; // 0x8
|
animlib::NmGraphEventTypeCondition_t m_eventTypeCondition; // 0x8
|
||||||
[[maybe_unused]] std::uint8_t pad_0x09[0x7];
|
[[maybe_unused]] std::uint8_t pad_0x09[0x7];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
static_assert(offsetof(CNmStateEventConditionNode__Condition_t, m_eventID) == 0x0);
|
static_assert(offsetof(CNmGraphEventConditionNode__Condition_t, m_eventID) == 0x0);
|
||||||
static_assert(offsetof(CNmStateEventConditionNode__Condition_t, m_eventTypeCondition) == 0x8);
|
static_assert(offsetof(CNmGraphEventConditionNode__Condition_t, m_eventTypeCondition) == 0x8);
|
||||||
|
|
||||||
static_assert(sizeof(CNmStateEventConditionNode__Condition_t) == 0x10);
|
static_assert(sizeof(CNmGraphEventConditionNode__Condition_t) == 0x10);
|
||||||
};
|
};
|
@ -1,36 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
#include "source2sdk/animlib/CNmGraphDataSet.hpp"
|
|
||||||
#include "source2sdk/resourcesystem/InfoForResourceTypeCNmGraphDefinition.hpp"
|
|
||||||
#include "source2sdk/source2gen.hpp"
|
|
||||||
#include <cstddef>
|
|
||||||
#include <cstdint>
|
|
||||||
|
|
||||||
// /////////////////////////////////////////////////////////////
|
|
||||||
// Module: animlib
|
|
||||||
// Created using source2gen - github.com/neverlosecc/source2gen
|
|
||||||
// /////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
namespace source2sdk::animlib
|
|
||||||
{
|
|
||||||
// Registered alignment: 0x8
|
|
||||||
// Alignment: 0x8
|
|
||||||
// Standard-layout class: true
|
|
||||||
// Size: 0x58
|
|
||||||
//
|
|
||||||
// static metadata: MGetKV3ClassDefaults
|
|
||||||
#pragma pack(push, 1)
|
|
||||||
class CNmGraphVariation
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
// m_graphDefinition has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
|
||||||
// CStrongHandle<resourcesystem::InfoForResourceTypeCNmGraphDefinition> m_graphDefinition;
|
|
||||||
char m_graphDefinition[0x8]; // 0x0
|
|
||||||
animlib::CNmGraphDataSet m_dataSet; // 0x8
|
|
||||||
};
|
|
||||||
#pragma pack(pop)
|
|
||||||
|
|
||||||
static_assert(offsetof(CNmGraphVariation, m_graphDefinition) == 0x0);
|
|
||||||
static_assert(offsetof(CNmGraphVariation, m_dataSet) == 0x8);
|
|
||||||
|
|
||||||
static_assert(sizeof(CNmGraphVariation) == 0x58);
|
|
||||||
};
|
|
@ -0,0 +1,37 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "source2sdk/animlib/CNmIDValueNode__CDefinition.hpp"
|
||||||
|
#include "source2sdk/source2gen.hpp"
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animlib
|
||||||
|
{
|
||||||
|
// Registered alignment: 0x8
|
||||||
|
// Alignment: 0x8
|
||||||
|
// Standard-layout class: false
|
||||||
|
// Size: 0x80
|
||||||
|
// Has VTable
|
||||||
|
//
|
||||||
|
// static metadata: MGetKV3ClassDefaults
|
||||||
|
#pragma pack(push, 1)
|
||||||
|
class CNmIDSelectorNode__CDefinition : public animlib::CNmIDValueNode__CDefinition
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
// m_conditionNodeIndices has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
|
// CUtlVectorFixedGrowable<int16_t,5> m_conditionNodeIndices;
|
||||||
|
char m_conditionNodeIndices[0x28]; // 0x10
|
||||||
|
// m_values has a template type with potentially unknown template parameters. You can try uncommenting the field below.
|
||||||
|
// CUtlVectorFixedGrowable<CGlobalSymbol,5> m_values;
|
||||||
|
char m_values[0x40]; // 0x38
|
||||||
|
CGlobalSymbol m_defaultValue; // 0x78
|
||||||
|
};
|
||||||
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
// Cannot assert offsets of fields in CNmIDSelectorNode::CDefinition because it is not a standard-layout class
|
||||||
|
static_assert(sizeof(CNmIDSelectorNode__CDefinition) == 0x80);
|
||||||
|
};
|
@ -0,0 +1,34 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "source2sdk/animlib/CNmIDValueNode__CDefinition.hpp"
|
||||||
|
#include "source2sdk/source2gen.hpp"
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animlib
|
||||||
|
{
|
||||||
|
// Registered alignment: 0x8
|
||||||
|
// Alignment: 0x8
|
||||||
|
// Standard-layout class: false
|
||||||
|
// Size: 0x18
|
||||||
|
// Has VTable
|
||||||
|
//
|
||||||
|
// static metadata: MGetKV3ClassDefaults
|
||||||
|
#pragma pack(push, 1)
|
||||||
|
class CNmIDSwitchNode__CDefinition : public animlib::CNmIDValueNode__CDefinition
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
int16_t m_nSwitchValueNodeIdx; // 0x10
|
||||||
|
int16_t m_nTrueValueNodeIdx; // 0x12
|
||||||
|
int16_t m_nFalseValueNodeIdx; // 0x14
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x16[0x2];
|
||||||
|
};
|
||||||
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
// Cannot assert offsets of fields in CNmIDSwitchNode::CDefinition because it is not a standard-layout class
|
||||||
|
static_assert(sizeof(CNmIDSwitchNode__CDefinition) == 0x18);
|
||||||
|
};
|
37
sdk/include/source2sdk/animlib/CNmIKBody.hpp
Normal file
37
sdk/include/source2sdk/animlib/CNmIKBody.hpp
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "source2sdk/source2gen.hpp"
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animlib
|
||||||
|
{
|
||||||
|
// Registered alignment: 0x4
|
||||||
|
// Alignment: 0x4
|
||||||
|
// Standard-layout class: true
|
||||||
|
// Size: 0x20
|
||||||
|
// Has Trivial Destructor
|
||||||
|
//
|
||||||
|
// static metadata: MGetKV3ClassDefaults
|
||||||
|
#pragma pack(push, 1)
|
||||||
|
class CNmIKBody
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
float m_flMass; // 0x0
|
||||||
|
Vector m_vLocalMassCenter; // 0x4
|
||||||
|
Vector m_vRadius; // 0x10
|
||||||
|
float m_flResistance; // 0x1c
|
||||||
|
};
|
||||||
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
static_assert(offsetof(CNmIKBody, m_flMass) == 0x0);
|
||||||
|
static_assert(offsetof(CNmIKBody, m_vLocalMassCenter) == 0x4);
|
||||||
|
static_assert(offsetof(CNmIKBody, m_vRadius) == 0x10);
|
||||||
|
static_assert(offsetof(CNmIKBody, m_flResistance) == 0x1c);
|
||||||
|
|
||||||
|
static_assert(sizeof(CNmIKBody) == 0x20);
|
||||||
|
};
|
42
sdk/include/source2sdk/animlib/CNmIKEffector.hpp
Normal file
42
sdk/include/source2sdk/animlib/CNmIKEffector.hpp
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "source2sdk/source2gen.hpp"
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
// Module: animlib
|
||||||
|
// Created using source2gen - github.com/neverlosecc/source2gen
|
||||||
|
// /////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
namespace source2sdk::animlib
|
||||||
|
{
|
||||||
|
// Registered alignment: 0x10
|
||||||
|
// Alignment: 0x10
|
||||||
|
// Standard-layout class: true
|
||||||
|
// Size: 0x40
|
||||||
|
// Has Trivial Destructor
|
||||||
|
//
|
||||||
|
// static metadata: MGetKV3ClassDefaults
|
||||||
|
#pragma pack(push, 1)
|
||||||
|
class CNmIKEffector
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
int32_t m_nBodyIndex; // 0x0
|
||||||
|
bool m_bEnabled; // 0x4
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x05[0x3]; // 0x5
|
||||||
|
Vector m_vTargetPosition; // 0x8
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x14[0xc]; // 0x14
|
||||||
|
Quaternion m_qTargetOrientation; // 0x20
|
||||||
|
float m_flWeight; // 0x30
|
||||||
|
[[maybe_unused]] std::uint8_t pad_0x34[0xc];
|
||||||
|
};
|
||||||
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
static_assert(offsetof(CNmIKEffector, m_nBodyIndex) == 0x0);
|
||||||
|
static_assert(offsetof(CNmIKEffector, m_bEnabled) == 0x4);
|
||||||
|
static_assert(offsetof(CNmIKEffector, m_vTargetPosition) == 0x8);
|
||||||
|
static_assert(offsetof(CNmIKEffector, m_qTargetOrientation) == 0x20);
|
||||||
|
static_assert(offsetof(CNmIKEffector, m_flWeight) == 0x30);
|
||||||
|
|
||||||
|
static_assert(sizeof(CNmIKEffector) == 0x40);
|
||||||
|
};
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user