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

njCnkEasyMultiDrawMotion

モーションの描画

書式

void njCnkEasyMultiDrawMotion( *object, *motion, frame )
NJS_CNK_OBJECT *object
NJS_MOTION *motion
Float frame

引数

*objectオブジェクト構造体へのポインタ
*motionlinkモーションリンク構造体へのポインタ
frameフレーム番号

戻値

なし

解説

モーションをモーションデータに従って描画します。 フレーム番号には、浮動小数点が使えるため、モーションデータの補間ができます。 フレーム数が10のモーションの場合、フレーム番号の範囲は0〜10未満(9.9999)となります。 例えば、フレーム番号を0.5とすると、0フレーム目と1フレーム目のちょうど真ん中の値を、 補完して描画します。 9〜10未満(9.9999)の補完は、最後のフレームと、最初のフレームの補完となります。

用例

#include <Shinobi.h>
#define OBJECT  object_sample
#define MOTION  motion_sample
extern NJS_CNK_OBJECT OBJECT[];
extern NJS_MOTION MOTION[];
	:
njInitView( &view );
njSetView( &view );
njCnkSetEasyMultiLight( 1 );
njCnkSetEasyMultiLightVector(0.f, 0.f, -1.f);
njCnkSetEasyMultiAmbient(0.1f, 0.1f, 0.1f);
njCnkSetEasyMultiLightColor(NJD_CNK_EASY_MULTILIGHT_1, 0.6f, 0.5f, 0.3f);
njCnkSetEasyMultiLightMatrices();
	:
njCnkEasyMultiDrawMotion( MOTION,ff );
ff+=0.2f;
if( ff >= (MOTION->nbFrame) ) ff-=MOTION->nbFrame;
	:

備考

CHUNKオブジェクト構造体用のモーションです。

参照

njCnkEasyMultiDrawObject()

njCnkEasyMultiDrawMotion
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998