セルスプライトを描画する
NJS_CELL_STREAM_LIST streamlist;
Sint32 *wbuf;
NJS_CELL_SPRITE_VAL cval;
Sint32 size;
/* データは他で設定されているものとする*/
extern NJS_CELL_SPRITE csprite;
extern NJS_CELL_STREAM stream0;
extern NJS_CELL_STREAM stream1;
/*
ワークバッファを取得する
最大ストリーム数を2とする
*/
size = njCalcCellStreamWorkSize(&csprite,2);
wbuf = syMalloc(size);
/* セルストリームリストを初期化する */
njInitCellStreamList(&streamlist,&csprite,wbuf);
/* セルストリームを追加する */
njAddCellStream(&streamlist,&stream0);
njAddCellStream(&streamlist,&stream1);
:
/* XYZ座標、スケールを変更する */
cval.flag = NJD_CELLSPRITE_CONSTANT_XYZ|NJD_CELLSPRITE_CONSTANT_SXSY;
cval.cst_pos.x = 100.f;
cval.cst_pos.y = 100.f;
cval.cst_pos.z = -100.f;
cval.cst_sx = 1.f;
cval.cst_sy = 1.f;
main()
{
njPushMatrixEx();
njTranslateEx(&v);
/* 1フレームづつ描画する */
njDrawCellStream3D( &streamlist, &motion, 1,&cval);
njPopMatrixEx();
}