CNmClipDocument
CS2 build 25218825 · Steam date 2026-09-09 · platform windows-x86_64 · cs2_schema.json
Kind: classSize: 248 bytes (0xf8)Alignment: 8 bytesModule: animdoclibBinary: !GlobalTypes
Relationships
Inherits from: CNmAnimDocument
Inheritance tree
CNmAnimDocument
- CNmClipDocument
Relationship diagram (2 edges)
classDiagram
CNmAnimDocument <|-- CNmClipDocument
CNmClipDocument *-- CNmClipDocEventTrackMemory layout
14 fields, 13 declared here and 1 inherited. Offsets are absolute from the object base on windows-x86_64.
CNmAnimDocumentCNmClipDocument
| Offset | Field | Type | From | Annotations |
|---|---|---|---|---|
0x68 | m_nVersion | int32 | CNmAnimDocument | MPropertySuppressField |
0x70 | m_sourceFilename | CUtlString | MPropertyAttributeEditor ModelDocAssetBrowse( dmx, fbx, smd, *requiredoubleclick, *ShowRelatedFile ) | |
0x78 | m_animationSkeletonName | CUtlString | MPropertyAttributeEditor AssetBrowse( vnmskel, *requiredoubleclick ) | |
0x80 | m_secondaryAnimationSkeletonNames | CUtlVector< CUtlString > | MPropertyAttributeEditor AssetBrowse( vnmskel, *requiredoubleclick ) MPropertyAutoExpandSelf | |
0x98 | m_eventTracks | CUtlLeanVector< CNmClipDocEventTrack > | MPropertySuppressField | |
0xa8 | m_nStartFrame | int32 | MPropertyDescription Specify the import start frame (0 or a negative value means use the first frame in the authored animation) MPropertyGroupName +Import Options | |
0xac | m_nEndFrame | int32 | MPropertyDescription Specify the import end frame (0 or a negative value means use the last frame in the authored animation) MPropertyGroupName +Import Options | |
0xb0 | m_flDurationOverrideSeconds | float32 | MPropertyDescription Override the final duration of this clip in seconds (0 or a negative value means use the authored duration) MPropertyGroupName +Import Options | |
0xb4 | m_additiveType | CNmClipDocument::AdditiveType_t | MPropertyGroupName +Additive | |
0xb8 | m_additiveBaseFilename | CUtlString | MPropertyAttrStateCallback MPropertyAttributeEditor AssetBrowse( dmx, fbx, *requiredoubleclick ) MPropertyDescription The source file to use as the base of the additive MPropertyGroupName +Additive | |
0xc0 | m_additiveBaseFrame | CNmClipDocument::AdditiveBaseFrame_t | MPropertyAttrStateCallback MPropertyDescription The frame to use when generating an additive, if you are generating relative to another animation and this is set to -1, we will extract each frame from it's corresponding frame in the base anim MPropertyGroupName +Additive | |
0xc4 | m_nAdditiveBaseFrameIdx | int32 | MPropertyAttrStateCallback MPropertyDescription The frame to use when generating an additive, only valid for 'RelativeToFrame' and 'RelativeToAnimationFrame' MPropertyGroupName +Additive | |
0xc8 | m_bUseReferencePoseForSecondaryAnimAdditives | bool | MPropertyAttrStateCallback MPropertyDescription Should we calculate the additives for the secondary weapons from their reference pose or try to look up a pose in the specified animation MPropertyGroupName +Additive | |
0xd0 | m_bonesToSampleInModelSpace | CUtlVector< CUtlString > | MPropertyAutoExpandSelf MPropertyDescription List the set of bones that need to be sampled in model space for sub-frames. Warning! This can be REALLY expensive so be careful with this! MPropertyGroupName Advanced |
KV3 class defaults
{
"_class": "CNmClipDocument",
"m_nVersion": 0,
"m_sourceFilename": "",
"m_animationSkeletonName": "",
"m_secondaryAnimationSkeletonNames":
[
],
"m_eventTracks":
[
],
"m_nStartFrame": -1,
"m_nEndFrame": -1,
"m_flDurationOverrideSeconds": -1.000000,
"m_additiveType": "None",
"m_additiveBaseFilename": "",
"m_additiveBaseFrame": "FirstFrame",
"m_nAdditiveBaseFrameIdx": -1,
"m_bUseReferencePoseForSecondaryAnimAdditives": false,
"m_bonesToSampleInModelSpace":
[
]
}