void njControl3D( flag ) Uint32 flag
flag | コントロールパラメータ |
0 | 何の指定も行わない(デフォルト) |
NJD_CONTROL_3D_CONSTANT_ATTR | モデルのアトリビュートを変更可能にする。変更するパラメータはnjSetConstantAttr()関数で指定。NJD_CONTROL_3D_CNK_CONSTANT_ATTRと同時には設定できない。 |
NJD_CONTROL_3D_CONSTANT_MATERIAL | モデルのマテリアルデータを固定値に変更。変更するパラメータはnjSetConstantMaterial()関数で指定。 |
NJD_CONTROL_3D_OFFSET_MATERIAL | モデルのマテリアルデータを補正。補正するパラメータは njSetConstantMaterial()関数で指定。 |
NJD_CONTROL_3D_DEPTH_QUEUE | デプスキューを有効にする。デプスキューのパラメータは njSetDepthQueue()関数で指定。 |
NJD_CONTROL_3D_MODEL_CLIP | モデル単位のクリッピングを有効にする。 |
NJD_CONTROL_3D_CONSTANT_TEXTURE_MATERIAL | テクスチャのマテリアルを白にします(デフォルトはマテリアルの色) |
NJD_CONTROL_3D_SHADOW | モデル描画をチープシャドウモードにする。 |
NJD_CONTROL_3D_SHADOW_OPAQUE | モデル描画をチープシャドウモードにする。(半透明ポリゴンには影がかからない)。 |
NJD_CONTROL_3D_CNK_CONSTANT_ATTR | チャンクモデルのアトリビュートを変更できるようにする。変更するパラメータは、njSetConstantAttr()関数で指定。 NJD_CONTROL_3D_CONSTANT_ATTRと同時には設定できない。 |
NJD_CONTROL_3D_TRANS_MODIFIER | モディファイアボリュームを半透明にも影響するようにする。これを設定しないと、半透明ポリゴンにはモディファイアが影響しない。これを設定する場合は、半透明モディファイアバッファを確保しなければならない。 |
NJD_CONTROL_3D_USE_PUNCHTHROUGH | 半透明ポリゴンをパンチスルーポリゴンとして扱う。これを設定する場合は、パンチスルーバッファを確保しなければならない。 |
NJD_CONTROL_3D_CNK_BLEND_MODE | チャンクモデルのブレンドモードを変更する。変更するパラメタは、njSetCnkBlendMode()関数で設定する。 |
NJD_CONTROL_3D_DISABLE_NEAR_CLIP | ニアクリップをポリゴン単位にする。これによりポリゴンの補間を行わないので、性能が向上する。 |
NJD_CONTROL_3D_ENV_UV_SCROLL | 環境マッピングのテクスチャのスクロールを行う。スクロールする値の設定は、njCnkSetUvScroll()関数で行う。 |
NJD_CONTROL_3D_MIRROR_MODEL | njMirror()関数などで、マトリクスが反転した場合にモデル描画を正しく行う。 |
: 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_NO_CLIP_CHECK | NJD_CONTROL_3D_DISP_AXIS ); while(1) { njClearMatrix(); njTranslate( NULL, 0.f, 0.f, -10.f ); njRotateXYZ( NULL, xx,yy,zz ); njDrawObject( object ); xx += 257; yy += 179; zz += 193; njWaitVSync(); }
「デプスキュー」とは距離に応じて透明度(α値)を変化させることです。