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

njSetConstantMaterial

モデルマテリアルの設定

書式

void njSetConstantMaterial( *argb ) 
NJS_ARGB *argb 

引数

*argb   マテリアルデータ

戻り値

なし

解説

モデルのマテリアルデータを指定します。

引数 argbに指定する値は、−1.0f〜+1.0fです。 njControl3D関数が定義されない限り値を参照しないので、デフォルトは不定となります。 njControl3D関数にNJD_CONTROL_3D_CONSTANT_MATERIAL または、NJD_CONTROL_3D_OFFSET_MATERIALを指定したとき有効になります。 NJD_CONTROL_3D_CONSTANT_MATERIALを指定したときは、指定したマテリアルでモデルを描画します。 NJD_CONTROL_3D_OFFSET_MATERIALを指定したときは、モデルデータのマテリアルに指定したマテリアルを加えて描画します。また、スプライト描画のカラー演算にも使用します。


用例

モデルがすべて半透明で表示されます。
	:
njInitVertexBuffer( 500000, 0, 10000, 0, 0 );
njInitMatrix( matrix, 128, 0);
njInit3D( vbuf, 4096 );
njInitView( &view );
njCreateLight( &light, NJD_DIR_LIGHT );
njSetView( &view );
njControl3D( NJD_CONTROL_3D_OFFSET_MATERIAL );
/* モデルに半透明が設定されていない場合 */
njSetConstantAttr( 0xFFFFFFFF, NJD_FLAG_USE_ALPHA)

argb.a = -0.5f;
argb.r = 0.f;
argb.g = 0.f;
argb.b = 0.f;
njSetConstantMaterial( &argb );
while(1) {
 njClearMatrix();
 njTranslate( NULL, 0.f, 0.f, -10.f );
 njRotateXYZ( NULL, xx,yy,zz );
 njDrawModel( model );
 xx += 257;
 yy += 179;
 zz += 193;
 njWaitVSync();
}

参照

njInit3D()
njControl3D()
njDrawModel()
njDrawObject()
njDrawSprite2D()
njDrawSprite3D()

njSetConstantMaterial
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998,1999