Ninjaライブラリ - モデル関数

njCnkEasyDrawObject

CHUNK オブジェクトの描画

書式

void njCnkEasyDrawObject( *object )
NJS_CNK_OBJECT *object

引数

*objectチャンクオブジェクト構造体へのポインタ

戻値

なし

解説

チャンクオブジェクト(親子階層付モデルデータ)をカレントマトリクスで座標変換して描画します。 この関数では表裏判定をしません(Double Side)。

設定は次の関数を使用します。

njCnkSetEasyLight()光源の設定
njCnkSetEasyLightIntensity()光源の強さ設定
njCnkSetEasyLightColor()光源の色設定

サポートしているチャンク形式は次のとおりです。

頂点チャンクNJD_CV_SH, NJD_CV_VN_SH, NJD_CV, NJD_CV_D8, NJD_CV_IN, NJD_CV_VN, NJD_CV_VNX, NJD_CV_VN_D8
ストリップチャンクNJD_CS, NJD_CS_UVH, NJD_CS_UVN


用例

sbInitSystem( NJD_RESOLUTION_640x240_NTSCNI, NJD_FRAMEBUFFER_MODE_RGB565, 1 );
njInitVertexBuffer( 500000, 0, 10000, 0, 0 );
njInitMatrix( matrix, 128, 0);
njInit3D( vbuf, 4096 );
njInitView( &view );
njSetView( &view );
njCnkSetEasyLight( 0.f, 0.f, 1.0f );
njCnkSetEasyLightIntensity( 1.0f, 0.0f );
njCnkSetEasyLightColor( 1.0f, 1.0f, 1.0f );
while(1) {
 njClearMatrix();
 njTranslate( NULL, 0.f, 0.f, -10.f );
 njRotateXYZ( NULL, xx,yy,zz );
 njCnkEasyDrawObject( object );
 xx += 257;
 yy += 179;
 zz += 193;
 njWaitVSync();
}

備考

チャンク形式の場合、画角やアスペクト比はライトの設定の前で行います。 njCnkSetAmbient()関数でアンピエントの設定を行います。 この値とデータ側のアンビエントをかけて実際のアンビエントカラーとなります。 ベーシックモデルからチャンクモデルにコンバートした場合は、アンビエントデータが0になるので、 アンビエントが効かなくなります。ご注意ください

参照

njCnkSetEasyLight()
njCnkSetEasyLightIntensity()
njCnkSetEasyLightColor()
njCnkEasyDrawModel()

njCnkEasyDrawObject
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998