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

njLightMotion

ライト・モーションの実行

書式

void njLightMotion( *light, *motion, frame )
NJS_LIGHT *light
NJS_MOTION *motion
Float frame

引数

*lightライト構造体へのポインタ
*motionモーション構造体へのポインタ
frameフレーム番号

戻値

なし

解説

ライトのモーションをモーションデータに従って描画します。

フレーム番号には、浮動小数点が使えるため、モーションデータの補間ができます。 フレーム数が10のモーションの場合、フレーム番号の範囲は0〜10未満(9.9999)となります。

例えば、フレーム番号を0.5とすると、0フレーム目と1フレーム目のちょうど真ん中の値を、補完して描画します。 9〜10未満(9.9999)の補完は、最後のフレームと、最初のフレームの補完となります。


用例

#include <Shinobi.h>
#define	MOTION	motion_sample
#define	LIGHT	light_sample
extern NJS_MOTION	MOTION[];
extern NJS_LIGHT	LIGHT[];
	:
njSetLight(LIGHT);
	:
njLightMotion( LIGHT,MOTION,ff );
ff+=0.2f;
if( ff >= (MOTION->nbFrame-1) ) ff=0.f;
	:

備考

この関数は、NAL、NAMファイルで使用されることを前提としますが、 njCreateLight()等で設定されたライトにも有効です。

参照

njSetLight()
njDrawMotion()

njLightMotion
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998