Ninja Library - モーション関数

njCameraAction

カメラモーションの実行(アクション構造体対応)

書式

void njCameraAction( caction, frame )
const NJS_CACTION *caction
Float frame

引数

camera   カメラ構造体へのポインタ
caction   カメラアクション構造体へのポインタ
frame   フレーム番号(0〜モーションフレーム数(caction->motion->nbFrame)未満)

戻り値

なし

解説

カメラのモーションをモーションデータにしたがって実行します。

通常、本関数の caction 引数には、カメラモーション用の NAMファイル(またはNJMファイル)中の NJS_CACTION 構造体を指定します。

本関数は、 njCameraMotion( caction->camera, caction->motion, frame ); を呼び出すのと等価です。


用例

#include <Ninja.h>
#define CAMERA_ACTION    camera_action1;
#define ENEMY1_MODEL     model_enemy1;
#define ENEMY1_MOTION    motion_enemy1;

extern NJS_CACTION     CAMERA_ACTION;
extern NJS_MODEL       ENEMY1_MODEL;
extern NJS_MOTION      ENEMY1_MOTION;

Float    EneX;
Float    EneY;
Float    EneZ;
Angle    EneAngY;

void DrawFunc( Float frame )
{
    njUnitMatrix( NULL );
    njCameraAction( &CAMERA_ACTION, frame );
    
    njPushMatrixEx();
    
    njTranslate( NULL, EneX, EneY, EneZ );
    njRotateY( NULL, EneAngY );
    njCnkEasyDrawMotion( &ENEMY1_MODEL, &ENEMY1_MOTION, frame );
    
    njPopMatrixEx();
}

備考


本関数は0番スロットのモーション情報構造体を使用します。
本関数を呼び出すとカレントモーション情報構造体は0番スロットに設定されます。

参照

njCameraMotion() カメラモーションの実行

njCameraAction
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998-2000