$collisionmodel: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(these aren't normals)
Line 30: Line 30:
; <code>$inertia <[[normal]]></code>
; <code>$inertia <[[normal]]></code>
: Inertia scale.
: Inertia scale.
; <code>$damping <[[normal]]></code>
; <code>$damping <[[float]]></code>
: Linear damping scale.
: Linear damping scale.
; <code>$rotdamping <[[normal]]></code>
; <code>$rotdamping <[[float]]></code>
: Rotational damping scale. {{warning|This affects the pull of gravity on the model and if abused can make it appear to float gently through the air. Valve recommends using "friction" instead.}}
: Rotational damping scale. {{warning|This affects the pull of gravity on the model and if abused can make it appear to float gently through the air. Valve recommends using "friction" instead.}}
; <code>$drag <[[normal]]></code>
; <code>$drag <[[normal]]></code>

Revision as of 11:15, 13 July 2012

The QC command $collisionmodel is used to embed a static collision mesh in a model, for use in VPhysics calculations. Animated models (including one that will become ragdolls) should use $collisionjoints instead.

Warning.pngWarning:Collision meshes should have extremely few polygons. See Collision mesh for examples.
Note.pngNote:For collision meshes modeled in XSI ModTool, ensure that none of the edges are marked as hard edges. Hard edges generate errors in the physbox smd.
Tip.pngTip:Set the Console Variable vcollide_wireframe 1 to view collision meshes in-game.

Syntax

$collisionmodel	<collision mesh SMD>
{
	<options>
}

Options

$mass <float|kilograms>
Manually set the mass of the model, in kilograms.
Tip.pngTip:By default, the Player can +USE pick up 35KG max. The gravgun can pick up 250KG max. The portal gun can pick up 85KG max.
$automass
Calculate the mass of the model based on the volume of the collision model and the material defined in its prop_data.
$concave
By default, studiomdl will generate a single convex hull by 'shrinkwrapping' any concavities. You can create a concave hull by including multiple convex shapes (potentially overlapping) in your SMD and passing this command.
$maxconvexpieces <int>
By default, the model compiler limits a concave collision model to twenty convex pieces. This command can be used to override the limit if you are creating an Costly collision model.
Note.pngNote:Introduced with the Orange Box. In the Ep1 engine, run studiomdl with -fullcollide instead.
$masscenter <vector|offset>
Override the center of mass, in local coords.
$inertia <normal>
Inertia scale.
$damping <float>
Linear damping scale.
$rotdamping <float>
Rotational damping scale.
Warning.pngWarning:This affects the pull of gravity on the model and if abused can make it appear to float gently through the air. Valve recommends using "friction" instead.
$drag <normal>
Scales air resistance.

Example

$collisionmodel "tree_deciduous_01a_physbox.smd"
{
	$mass 350.0
	$concave
}

See also