Ninjaライブラリ - モーション関数

njEasyActionLink

モーションの結合

書式

void njEasyActionLink( *actionlink, frame ) 
NJS_ACTION_LINK *actionlink 
Float frame 

引数

*actionlink   アクションリンク構造体へのポインタ
frame   フレーム番号(0〜1)

戻り値

なし

解説

2つのモーション構造体をつなげます。 モーションリンク構造体中のフレームはリンク元とリンク先のモーション・フレームで、引数のフレームが0のときにリンク元のフレーム、1のときにリンク先のフレームのモーションにあり、その他(0<ff<1)は、リンク先とリンク元のフレームを補完します。

用例

extern NJS_MOTION	MOTION1[];
extern NJS_MOTION	MOTION2[];
NJS_MOTION_LINK	motionlink;
NJS_ACTION_LINK	actionlink;
	:
actionlink.motionlink = &motionlink;
actionlink.object = OBJECT;
motionlink.motion[0] = MOTION1;/*リンク元*/
motionlink.motion[1] = MOTION2;/*リンク先*/
/*MOTION1の最後のフレームからMOTION2の1.5フレームを補間*/
motionlink.frame[0] = MOTION1->nbFrame-1;
motionlink.frame[1] = 1.5;
	:
/* フレームは0−1を指定 */
njEasyActionLink( &actionlink, ff/STEPS );
ff+=0.2f;
if( ff >= STEPS - 1 ) ff=0.f;
	:

備考

モーションがついただけで、描画に関してはモデル描画とまったく同様になります。 モデル関数ではnjEasyDrawObject関数に対応しますので、光源は専用ライトとなります。

参照

njEasyDrawMotionLink()

njEasyActionLink
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998,1999