$includemodel: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
mNo edit summary
(changed info on what includemodel copies. it DOES copy attachments and also $collisiontext. (I made doors that use includemodel. $collisiontext data was broken because the included door has none. So it forced that onto the other doors))
Line 3: Line 3:
* Animations and sequences are processed in-order, so subsequent animations/sequences that have name conflicts will be ignored, and any references to .mdl local entry by the same name will be overwritten with the reference to a first one declared.
* Animations and sequences are processed in-order, so subsequent animations/sequences that have name conflicts will be ignored, and any references to .mdl local entry by the same name will be overwritten with the reference to a first one declared.
* Included .mdl's can have different bone ordering, but they need to have the same bone hierarchy and ikchain declarations. Currently there's no run-time checking to verify they match.
* Included .mdl's can have different bone ordering, but they need to have the same bone hierarchy and ikchain declarations. Currently there's no run-time checking to verify they match.
* Only animations and sequences are used from included .mdls. Currently models, textures, faces, attachments, etc. are ignored.  
* Using $Includemodel will copy [[$animation]], [[$sequence]], [[$attachment]] and [[$collisiontext]] data. Models, Textures, Faces and other data are ignored.


== Example ==
== Example ==

Revision as of 18:16, 26 March 2022

The $includemodel QC command is used to add an MDL file that this model will include at run-time. All new sequences and animations will be appended to the model.

  • Animations and sequences are processed in-order, so subsequent animations/sequences that have name conflicts will be ignored, and any references to .mdl local entry by the same name will be overwritten with the reference to a first one declared.
  • Included .mdl's can have different bone ordering, but they need to have the same bone hierarchy and ikchain declarations. Currently there's no run-time checking to verify they match.
  • Using $Includemodel will copy $animation, $sequence, $attachment and $collisiontext data. Models, Textures, Faces and other data are ignored.

Example

  • This creates a viewmodel for the Left 4 Dead 2 Left 4 Dead 2 Boomer's hands, while taking the animations from anims_v_claw_Boomer.mdl.
Note.pngNote:$includemodel only points to the MDL file containing the animations to be used. It does not copy animations from that model and paste it into yours.
The model used in the $includemodel line must exist, otherwise the game cannot give your MDL animations.
$modelname "v_models\weapons\v_claw_Boomer.mdl"
$model "hands" "v_Boomer_Hands_l4d2.smd" 
$includemodel "v_models/weapons/anims_v_claw_Boomer.mdl"