$bonesaveframe: Difference between revisions
Jump to navigation
Jump to search

($bonesaveframe) |
Trigger hurt (talk | contribs) m (Fix first line to improve legibility & improved several lines.) |
||
Line 1: | Line 1: | ||
When using demand loaded animations (see [[$animblocksize]]) and asynchronous loading is enabled in the engine, the first frame of every animation is stored in a highly compressed form that the animation system will use | {{LanguageBar}} | ||
{{this is a|QC command|name=$sectionframes}} When using demand loaded animations (see [[$animblocksize]] and [[$sectionframes]]) and asynchronous loading is enabled in the engine, the first frame of every animation is stored in a highly compressed form that the animation system will use while waiting for the real data to show up. By default, all bones are written out in their entirety, but this is sometimes wasteful as not all bones need to both rotate & translate. This command allows you to specify which information is actually stored, in this case. | |||
By default, all bones are written out. | |||
== Syntax == | == Syntax == | ||
Line 35: | Line 34: | ||
$BoneSaveFrame "Dog_Model.Hand_R_Drill" rotation | $BoneSaveFrame "Dog_Model.Hand_R_Drill" rotation | ||
$BoneSaveFrame "Dog_Model.forward" rotation | $BoneSaveFrame "Dog_Model.forward" rotation | ||
== See also == | |||
* [[$animblocksize]] | |||
* [[$sectionframes]] | |||
[[Category:QC Commands|bonesaveframe]]__NOTOC__ | [[Category:QC Commands|bonesaveframe]]__NOTOC__ |
Revision as of 16:32, 14 July 2024


$sectionframes
is a QC command available in all Source games. When using demand loaded animations (see $animblocksize and $sectionframes) and asynchronous loading is enabled in the engine, the first frame of every animation is stored in a highly compressed form that the animation system will use while waiting for the real data to show up. By default, all bones are written out in their entirety, but this is sometimes wasteful as not all bones need to both rotate & translate. This command allows you to specify which information is actually stored, in this case.
Syntax
$bonesaveframe <bone name> ["position"] ["rotation"]
Example
$BoneSaveFrame "Dog_Model.Pelvis" position rotation $BoneSaveFrame "Dog_Model.Leg1_L" rotation $BoneSaveFrame "Dog_Model.Leg2_L" rotation $BoneSaveFrame "Dog_Model.Foot_L" rotation $BoneSaveFrame "Dog_Model.Leg1_R" rotation $BoneSaveFrame "Dog_Model.Leg2_R" rotation $BoneSaveFrame "Dog_Model.Foot_R" rotation $BoneSaveFrame "Dog_Model.Spine1" rotation $BoneSaveFrame "Dog_Model.Spine2" rotation $BoneSaveFrame "Dog_Model.Spine3" rotation $BoneSaveFrame "Dog_Model.Neck1" rotation $BoneSaveFrame "Dog_Model.Neck1_Length" rotation $BoneSaveFrame "Dog_Model.Neck2" rotation $BoneSaveFrame "Dog_Model.Neck2_Length" position rotation $BoneSaveFrame "Dog_Model.Clavical_L" rotation $BoneSaveFrame "Dog_Model.Arm1_L" rotation $BoneSaveFrame "Dog_Model.Arm2_L" rotation $BoneSaveFrame "Dog_Model.Hand_L" rotation $BoneSaveFrame "Dog_Model.BigPhys_Attachment" position rotation $BoneSaveFrame "Dog_Model.Pully_Arm_L" rotation $BoneSaveFrame "Dog_Model.Clavical_R" rotation $BoneSaveFrame "Dog_Model.Arm1_R" rotation $BoneSaveFrame "Dog_Model.Arm2_R" rotation $BoneSaveFrame "Dog_Model.Hand_R" rotation $BoneSaveFrame "Dog_Model.Hand_R_Drill" rotation $BoneSaveFrame "Dog_Model.forward" rotation