$collisionmodel: Difference between revisions
Jump to navigation
Jump to search
Tip:Use
Tip:If your model has moving parts that need to collide, use
Warning:Collision meshes should be extremely low-poly in comparison to body meshes, and even lod meshes. See collision mesh.
TomEdwards (talk | contribs) m (→Options: all redir to this page!) |
TomEdwards (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
The [[QC command]] <code>[[$collisionmodel]]</code> is used to | The [[QC command]] <code>[[$collisionmodel]]</code> is used to embed a non-animated [[collision mesh]] in a model, for use in [[VPhysics]] calculations. | ||
{{ | {{tip|Use <code>vcollide_wireframe 1</code> to view collision meshes in-game.}} | ||
{{tip|If your model has moving parts that need to collide, use <code>[[$collisionjoints]]</code>.}} | |||
[[$collisionmodel]] | {{warning|Collision meshes should be extremely low-poly in comparison to [[body mesh]]es, and even [[lod mesh]]es. See [[collision mesh]].}} | ||
== Usage == | |||
[[$collisionmodel]] <collision mesh SMD> | |||
{ | { | ||
<options> | |||
} | } | ||
==Options== | ==Options== | ||
Line 35: | Line 36: | ||
; <code>$drag <scale?></code> | ; <code>$drag <scale?></code> | ||
: Scales air resistance. | : Scales air resistance. | ||
== Example == | |||
$collisionmodel "tree_deciduous_01a_physbox.smd" | |||
{ | |||
$mass 350.0 | |||
$concave | |||
} | |||
==See also== | ==See also== | ||
*[[ | |||
*[[VPhysics]] | |||
*[[Physics and Ragdolls]] | *[[Physics and Ragdolls]] | ||
*[[$collisionjoints]] | *[[$collisionjoints]] | ||
[[Category:QC Commands]] | [[Category:QC Commands]] |
Revision as of 10:10, 27 April 2008
The QC command $collisionmodel
is used to embed a non-animated collision mesh in a model, for use in VPhysics calculations.

vcollide_wireframe 1
to view collision meshes in-game.
$collisionjoints
.
Usage
$collisionmodel <collision mesh SMD> { <options> }
Options
$mass <float|kilograms>
- Manually set the mass of the model.
- Todo: Presumably this has some use outside physics simulation?
$automass
- Automatically compute the mass of the model. The calculation takes into account the density/thickness of the material defined by $surfaceprop and/or prop_data, as well as the volume of the collision SMD itself.
$concave
- A collision model must be a convex shape, but you can create concave shapes by including multiple meshes in the same model. $concave tells studiomdl that this is what you want it to do, rather than make a single convex hull by bridging any gaps.
$maxconvexpieces <int>
- By default, studiomdl limits a concave collision model to twenty convex pieces. This command can be used to override the limit - for instance if you are creating an unusually large model.
Note:Introduced with the Orange Box. In the Ep1 engine, run studiomdl with
-fullcollide
when compiling instead.$masscenter <X Y Z offset?>
- Override the center of mass, in local coords.
$inertia <scale?>
- Inertia scale.
$damping <scale?>
- Linear damping scale.
$rotdamping <scale?>
- Rotational damping scale.
$drag <scale?>
- Scales air resistance.
Example
$collisionmodel "tree_deciduous_01a_physbox.smd" { $mass 350.0 $concave }