Blend sequence

From Valve Developer Community
Revision as of 06:56, 3 May 2008 by TomEdwards (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Stub

This article or section is a stub. You can help by expanding it.

A blend sequence altering the yaw of an NPC's aim. A second blend sequence will be needed to control pitch.

A Blend sequence is a $sequence that can move smoothly between up to nine sub-$animations based on a one-dimensional sliding value.

This allows for precise programmatic positioning of parts of a model. For instance, you might create two blend sequences to handle the direction in which an NPC points a weapon - one for pitch and one for yaw. By changing the blends' float input values, any AI controlling the model will be able to aim at targets in the world.

Another very common use for blend sequences is walking direction. A full 360 degrees can be blended between within the same sequence.

Creating blend sequences

To do...

blend <string|name> <float|min value> <float|max value>
blendwidth <int|width>
"Instead of just 1x1, 2x1, 3x1, 2x2, and 3x3 blends, by blending width, you can now have any size rectangular blends such as 7x1, 3x4, 2x9, etc."

Example

$sequence walk_all {
	a_walkS a_walkSE a_walkE a_walkNE a_walkN a_walkNW a_walkW a_walkSW a_walkS
	blendwidth 9 blend move_yaw -180 180 ACT_WALK 1 node "walking"
}

Animating for blend sequences

To do...

Tip.pngTip:The $animations used in blends are usually still poses, as movement is generated by other animations that play on top. If they aren't, e.g. for walking blends, it is important that each $animation used is the same length and plays at the same framerate!

See also