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

# njCnkSimpleMultiDrawObject

チャンクオブジェクトの描画

### 書式

      void njCnkSimpleMultiDrawObject( *object )
      NJS_CNK_OBJECT *objectl

### 引数

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

### 戻り値

  なし

### 解説

  4光源(専用)付きチャンクオブジェクト関数です。 チャンクオブジェクトをカレントマトリクスで座標変換して描画します。 njCnkEasyMultiDrawObject関数と同様の機能ですが、環境マッピングに対応しています。 なお、他のモデル関数と違い、ライトの設定は専用の関数を使用します。

  njCnkSetSimpleMultiLight()
  njCnkSetSimpleMultiLightSwitch()
  njCnkSetSimpleMultiAmbient()
  njCnkSetSimpleMultiLightColor()
  njCnkSetSimpleMultiLightVector()
  njCnkSetSimpleMultiLightPoint()
  njCnkSetSimpleMultiLightRange()
  njCnkSetSimpleMultiLightMatrices()

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

  頂点チャンク | NJD_CV_VN
  ストリップチャンク | NJD_CS,NJD_CS_UVH,NJD_CS_UVN

### 用例

      	:
      njInitVertexBuffer( 500000, 0, 10000, 0, 0 );
      njInitMatrix( matrix, 128, 0);
      njInit3D( vbuf, 4096 );
      njInitView( &view );
      njSetView( &view );
      njCnkSetSimpleMultiLight(4);
      njCnkSetSimpleMultiLightVector(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);
      while(1) {
       njClearMatrix();
       njTranslate( NULL, 0.f, 0.f, -10.f );
       njRotateXYZ( NULL, xx,yy,zz );
       njCnkSimpleMultiDrawObject( Object );
       xx += 257;
       yy += 179;
       zz += 193;
       njWaitVSync();
      }

### 参照

  njCnkSetSimpleMultiLight()
  njCnkSetSimpleMultiLightSwitch()
  njCnkSetSimpleMultiAmbient()
  njCnkSetSimpleMultiLightColor()
  njCnkSetSimpleMultiLightVector()
  njCnkSetSimpleMultiLightPoint()
  njCnkSetSimpleMultiLightRange()
  njCnkSetSimpleMultiLightMatrices()
  njCnkSimpleMultiDrawModel()

njCnkSimpleMultiDrawObject

COPYRIGHT © SEGA ENTERPRISES, LTD., 1998,1999