Body Groups: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
m (→Body Groups) |
||
| Line 1: | Line 1: | ||
==Body Groups== | ==Body Groups== | ||
''Body Groups'' are sub meshes of a model that can have changable states. Server code can change the state a model's body groups. | ''Body Groups'' are sub-meshes of a model that can have changable states. Server code can change the state a model's body groups. | ||
To define a body groups, you need to add a lines in the .qc | To define a body groups, you need to add a lines in the [[.qc]]. | ||
$bodygroup (name) | $bodygroup (name) | ||
| Line 30: | Line 30: | ||
SetBodyGroup( 1, ( RandInt( 1, 5 ) == 1 )?1:0 ); | SetBodyGroup( 1, ( RandInt( 1, 5 ) == 1 )?1:0 ); | ||
==Calculating the Bodygroup Integer== | ==Calculating the Bodygroup Integer== | ||
{{TODO|content}} | {{TODO|content}} | ||
Revision as of 21:07, 15 November 2005
Body Groups
Body Groups are sub-meshes of a model that can have changable states. Server code can change the state a model's body groups.
To define a body groups, you need to add a lines in the .qc.
$bodygroup (name)
{
studio (modelname)
["studio" modelname]
[blank]
}
For example (a single .mdl could be used for characters with and without glasses):
$bodygroup studio
{
studio "dude.smd"
}
$bodygroup eyewear
{
studio "glasses.smd"
blank
}
This example has two body groups numbered 0 and 1. Group 0 uses a single mesh and group 1 can be a visible glasses model (state 0) or invisible (state 1).
To change a body group's state simply call CBaseAnimating::SetBodygroup( int iGroup, int iValue ) in server code. For example, this would randomly give 1 out of 5 characters glasses:
SetBodyGroup( 1, ( RandInt( 1, 5 ) == 1 )?1:0 );
Calculating the Bodygroup Integer
Todo: content