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

njInitShape

シェープバッファの初期化。

書式

void njInitShape( *buf )
Float *buf

引数

*bufシェープ用バッファ

戻値

なし

解説

シェープ用のテンポラリ・バッファをセットします。 バッファの数は、すべてのオブジェクト内でシェープとして使用されるモデルの最大頂点数をN個とすると、 頂点もしくは法線のみのシェープの場合はN×3個、両方の場合はN×6個となります。 例えば、頂点シェープのみ使用する”人間1”と”人間2”のオブジェクト内で、 ”人間1”の”顔”のモデルが1000個の頂点を使用しこれがオブジェクト内の最大頂点数の時は、 "buf[3000]"を指定することになります。

用例

#define OBJECT  object_sample /* NJA(NAM)ファイル内に記述 */
#define MOTION  motion_sample /* NAMファイル内に記述 */
#define SHAPE  shape_sample /* NASファイル内に記述 */
extern NJS_OBJECT OBJECT[];
extern NJS_MOTION MOTION[];
extern NJS_MOTION SHAPE[];
float buf[6000];
float ff=0.f;
	:
InitShape(buf);
	:
njDrawShapeMotion( OBJECT,MOTION,SHAPE,ff );
ff+=0.2f;
if( ff >= (MOTION->nbFrame-1) ) ff=0.f;
	:

備考

シェープ(頂点アニメーション)を行う(シェープモーションの引数がNULLでない)njDrawShapeMotion()、 njFastDrawShapeMotion()、njDrawShapeMotionLink()、njFastDrawShapeMotionLink()は、 この関数の設定が必要となります。

参照

njDrawShapeMotion()
njFastDrawShapeMotion()
njDrawShapeMotionLink()
njFastDrawShapeMotionLink()

njInitShape
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998