njCnkModDrawObject
CHUNK モディファイアオブジェクトの描画

書 式

#include <Ninja.h>
void njCnkModDrawObject( object )
NJS_CNK_OBJECT *object

引 数

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

返 値

なし

エラー

なし

機 能

モディファイアボリュームを描画します。
この関数ではモディファイアの形を指定するだけですので、実際に影が映り込むモデルは、モディファイアの影響を受けるように設定しなければなりません。
通常のモデル描画の前に、
  njControl3D( NJD_CONTROL_3D_SHADOW );
  njSetCheapShadowMode( 128 );
このように設定すれば、モディファイアの影響を受けます。

用 例

sbInitSystem( NJD_RESOLUTION_640x240_NTSCNI, NJD_FRAMEBUFFER_MODE_RGB565, 1 );
njInitVertexBuffer( 500000, 0, 10000, 0, 0 );
njInitMatrix( matrix, 128, 0);
njInit3D( vbuf, 4096 );

njControl3D( NJD_CONTROL_3D_SHADOW );
njSetCheapShadowMode( 128 );

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 );
  njCnkEasyDrawModel( model );
  njCnkModDrawObject( MODIFIER );
  xx += 257;
  yy += 179;
  zz += 193;
  njWaitVSync();
}

備 考

チャンク形式の場合、画角やアスペクト比はライトの設定の前で行います。

モディファイアのチャンク形式は決まっています。
頂点チャンクは、 NJD_CV
ストリップチャンクは NJD_CO_P3
だけです。

関 連

njControl3D
njSetCheapShadowMode
njCnkModDrawModel

njCnkModDrawObject

Copyright SEGA ENTERPRISES, LTD., 1998