Sint32 njCnkSimpleMultiDrawModel2p( model, color )
NJS_CNK_MODEL *model
Float *color
model チャンクモデル構造体へのポインタ color 2パラメータ目のディフューズへ積算する配列のポインタ
-1 クリップアウト 0 正常
チャンクモデルをカレントマトリクスで座標変換してSIMPLE MULTI描画します。 2パラメータモディファイア用です。引数 colorが示している配列は、"ARGB"の順にならんでいます。
描画属性として、グーローテクスチャとグーローポリゴンのみ描画できます。
ライトの設定は専用の関数を使用します。
この関数がサポートしているチャンク形式は次のとおりです。
頂点チャンク NJD_CV_VN, NJD_CV_VN_NF, NJD_CV_VN_D8 ストリップチャンク NJD_CS NJD_CS_UVH NJD_CS_UVN NJD_CS_UVH2 NJD_CS_UVN2
Sint32 UserInit(void) { njCnkSetSimpleMultiLight(4); njCnkSetSimpleMultiLightVectorEx(NJD_CNK_SIMPLE_MULTILIGHT_1, 0.f, 0.f, -1.f); njCnkSetSimpleMultiLightPoint(NJD_CNK_SIMPLE_MULTILIGHT_2, 0.f, 0.f, -12.f); njCnkSetSimpleMultiLightPoint(NJD_CNK_SIMPLE_MULTILIGHT_3, 0.f, 0.f, -12.f); njCnkSetSimpleMultiLightPoint(NJD_CNK_SIMPLE_MULTILIGHT_4, 0.f, 0.f, -12.f); njCnkSetSimpleMultiLightRange(NJD_CNK_SIMPLE_MULTILIGHT_2, 6.f, 40.f); njCnkSetSimpleMultiLightRange(NJD_CNK_SIMPLE_MULTILIGHT_3, 6.f, 40.f); njCnkSetSimpleMultiLightRange(NJD_CNK_SIMPLE_MULTILIGHT_4, 6.f, 40.f); njCnkSetSimpleMultiAmbient(0.2f, 0.2f, 0.2f); njCnkSetSimpleMultiLightColor(NJD_CNK_SIMPLE_MULTILIGHT_1, 0.5f, 0.4f, 0.7f); njCnkSetSimpleMultiLightColor(NJD_CNK_SIMPLE_MULTILIGHT_2, 1.5f, 0.0f, 0.0f); njCnkSetSimpleMultiLightColor(NJD_CNK_SIMPLE_MULTILIGHT_3, 0.0f, 1.5f, 0.0f); njCnkSetSimpleMultiLightColor(NJD_CNK_SIMPLE_MULTILIGHT_4, 0.0f, 0.0f, 1.5f); njCnkSetSimpleMultiLightSwitch(NJD_CNK_SIMPLE_MULTILIGHT_ALL, 1); njSetCheapShadowMode( -1 ); njControl3D( NJD_CONTROL_3D_SHADOW | NJD_CONTROL_3D_TRANS_MODIFIER ); return USER_CONTINUE; } Sint32 UserMain(void) { col[0] = 1.0f; col[1] = 1.5f; col[2] = 0.6f; col[3] = 0.7f; njPushMatrixEx(); njCnkSetSimpleMultiLightMatrices(); njTranslate( NULL, 0.f, 0.f, -10.f ); njRotateXYZ( NULL, xx,yy,zz ); njCnkSimpleMultiDrawModel2p( model , col ); xx += 257; yy += 179; zz += 193; njPopMatrixEx(); return USER_CONTINUE; }
njCnkSetSimpleMultiLight() njCnkSimpleMultiDrawObject(−Model)関数用光源の個数設定 njCnkSetSimpleMultiLightVectorEx() njCnkSimpleMultiDrawObject(−Model)用ライトの光源方向設定(平行光源) njCnkSetSimpleMultiLightPoint() njCnkSimpleMultiDrawObject(−Model)関数用光源の方向設定(点光源) njCnkSetSimpleMultiLightRange() njCnkSimpleMultiDrawObject(−Model)関数用光源の有効範囲設定(点光源) njCnkSetSimpleMultiAmbient() njCnkSimpleMultiDrawObject(−Model)関数用アンビエント光の色設定 njCnkSetSimpleMultiLightColor() njCnkSimpleMultiDrawObject(−Model)関数用光源の色設定 njCnkSetSimpleMultiLightSwitch() njCnkSimpleMultiDrawObject(−Model)関数用光源の点灯・消灯設定 njCnkSimpleMultiDrawModel() CHUNKモデルのSIMPLE MULTI描画 njCnkSimpleMultiDrawObject() CHUNKオブジェクトのSIMPLE MULTI描画