UFO: Alien Invasion
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
r_mesh_anim.h File Reference

Go to the source code of this file.

Functions

void R_AnimAppend (animState_t *as, const model_t *mod, const char *name)
 Appends a new animation to the current running one. More...
 
void R_AnimChange (animState_t *as, const model_t *mod, const char *name)
 Changes the animation for md2 models. More...
 
void R_AnimRun (animState_t *as, const model_t *mod, int msec)
 Run the animation of the given model. More...
 
const char * R_AnimGetName (const animState_t *as, const model_t *mod)
 Get the current running animation for a model. More...
 
void R_InterpolateTransform (float backlerp, int numframes, const mAliasTagOrientation_t *current, const mAliasTagOrientation_t *old, float *interpolated)
 Interpolate the transform for a model places on a tag of another model. More...
 

Function Documentation

void R_AnimAppend ( animState_t as,
const model_t mod,
const char *  name 
)

Appends a new animation to the current running one.

See also
R_AnimGet
R_AnimChange
R_AnimRun
R_AnimGetName
Parameters
[in,out]asThe animation state to append the new animation to
[in]modThe model to append the animation for
[in]nameThe animation name (from the *.anm file) to append

Definition at line 84 of file r_mesh_anim.cpp.

References model_s::alias, animState_s::backlerp, animState_s::change, Com_Printf(), animState_s::dt, animState_s::frame, mAliasAnim_s::from, animState_s::ladd, animState_s::lcur, model_s::name, mAliasModel_s::num_anims, animState_s::oldframe, R_AnimAdd(), R_AnimGet(), animState_s::time, mAliasAnim_s::time, and mAliasAnim_s::to.

Referenced by CL_ActorDie(), and CL_ActorDoShoot().

void R_AnimChange ( animState_t as,
const model_t mod,
const char *  name 
)
const char* R_AnimGetName ( const animState_t as,
const model_t mod 
)

Get the current running animation for a model.

See also
R_AnimGet
R_AnimAppend
R_AnimRun
R_AnimChange
Parameters
[in]asThe animation state to check
[in]modThe model to check
Returns
nullptr if no animation is set or running or the name of the current running animation otherwise.

Definition at line 242 of file r_mesh_anim.cpp.

References model_s::alias, animState_s::ladd, animState_s::lcur, MAX_ANIMLIST, mAliasAnim_s::name, mAliasModel_s::num_anims, and R_AnimGetAliasAnim.

Referenced by HUD_UpdateActorCvar(), UI_DrawModelNode(), and UI_DrawModelNodeWithUIModel().

void R_AnimRun ( animState_t as,
const model_t mod,
int  msec 
)

Run the animation of the given model.

See also
R_AnimGet
R_AnimAppend
R_AnimChange
R_AnimGetName
Parameters
[in,out]asThe animation state to run
[in]modThe model to run the animation for
[in]msecThe milliseconds since this was called last

Definition at line 192 of file r_mesh_anim.cpp.

References model_s::alias, animState_s::backlerp, animState_s::change, animState_s::dt, animState_s::frame, mAliasAnim_s::from, animState_s::ladd, animState_s::lcur, LOOPNEXT, MAX_ANIMLIST, mAliasModel_s::num_anims, animState_s::oldframe, R_AnimGetAliasAnim, animState_s::time, mAliasAnim_s::time, and mAliasAnim_s::to.

Referenced by LE_Think(), LM_AddToSceneOrder(), SEQ_Render3D(), UI_DrawModelNode(), and UI_DrawModelNodeWithUIModel().

void R_InterpolateTransform ( float  backLerp,
int  numframes,
const mAliasTagOrientation_t current,
const mAliasTagOrientation_t old,
float *  interpolated 
)

Interpolate the transform for a model places on a tag of another model.

Parameters
[out]interpolatedThis is an array of 16 floats
[in]currentThe current frame tag data
[in]oldThe old frame tag data
[in]backLerpthe linear interpolation value [0.0,1.0]
[in]numframesThe max frames of the tag data

Definition at line 212 of file r_mesh.cpp.

References mAliasTagOrientation_s::axis, i, mAliasTagOrientation_s::origin, R_ComputeGLMatrixFromTag(), and VectorNormalizeFast().

Referenced by R_CalcTransform(), and R_DrawModelDirect().