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

# njCnkEasyMultiDrawObject

チャンクモデルの描画

### 書式

      void njCnkEasyMultiDrawObject( *object )
      NJS_CNK_OBJECT *object

### 引数

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

### 戻り値

  なし

### 解説

  4光源(専用)付きチャンクオブジェクト関数です。 チャンクオブジェクトをカレントマトリクスで座標変換して描画します。 描画属性として、グーローテクスチャと、グーローポリゴンのみ描画できます。 なお、他のモデル関数と違い、ライトの設定は専用の関数を使用します。

  njCnkSetEasyMultiLight() | 光源の設定
  njCnkSetEasyMultiLightSwitch() | 点灯・消灯設定
  njCnkSetEasyMultiAmbient() | アンビエント設定
  njCnkSetEasyMultiLightColor() | 色設定
  njCnkSetEasyMultiLightVector() | 光源方向設定(平行光源)
  njCnkSetEasyMultiLightPoint() | 光源方向設定(点光源)
  njCnkSetEasyMultiLightRange() | 光源有効範囲設定(点光源)
  njCnkSetEasyMultiLightMatrices() | 方向・位置を反映

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

  頂点チャンク | 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 );
      njCnkSetEasyMultiLight(4);
      njCnkSetEasyMultiLightVector(0.f, 0.f, -1.f);
      njCnkSetEasyMultiLightPoint(NJD_CNK_EASY_MULTILIGHT_2, 0.f, 0.f, -12.f);
      njCnkSetEasyMultiLightPoint(NJD_CNK_EASY_MULTILIGHT_3, 0.f, 0.f, -12.f);
      njCnkSetEasyMultiLightPoint(NJD_CNK_EASY_MULTILIGHT_4, 0.f, 0.f, -12.f);
      njCnkSetEasyMultiLightRange(NJD_CNK_EASY_MULTILIGHT_2, 6.f, 40.f);
      njCnkSetEasyMultiLightRange(NJD_CNK_EASY_MULTILIGHT_3, 6.f, 40.f);
      njCnkSetEasyMultiLightRange(NJD_CNK_EASY_MULTILIGHT_4, 6.f, 40.f);
      njCnkSetEasyMultiAmbient(0.2f, 0.2f, 0.2f);
      njCnkSetEasyMultiLightColor(NJD_CNK_EASY_MULTILIGHT_1, 0.5f, 0.4f, 0.7f);
      njCnkSetEasyMultiLightColor(NJD_CNK_EASY_MULTILIGHT_2, 1.5f, 0.0f, 0.0f);
      njCnkSetEasyMultiLightColor(NJD_CNK_EASY_MULTILIGHT_3, 0.0f, 1.5f, 0.0f);
      njCnkSetEasyMultiLightColor(NJD_CNK_EASY_MULTILIGHT_4, 0.0f, 0.0f, 1.5f);
      njCnkSetEasyMultiLightSwitch(NJD_CNK_EASY_MULTILIGHT_ALL, 1);
      while(1) {
       njClearMatrix();
       njTranslate( NULL, 0.f, 0.f, -10.f );
       njRotateXYZ( NULL, xx,yy,zz );
       njCnkEasyMultiDrawObject( object );
       xx += 257;
       yy += 179;
       zz += 193;
       njWaitVSync();
      }

### 参照

  njCnkSetEasyMultiLight()
  njCnkSetEasyMultiLightSwitch()
  njCnkSetEasyMultiAmbient()
  njCnkSetEasyMultiLightColor()
  njCnkSetEasyMultiLightVector()
  njCnkSetEasyMultiLightPoint()
  njCnkSetEasyMultiLightRange()
  njCnkSetEasyMultiLightMatrices()
  njCnkEasyMultiDrawModel()

njCnkEasyMultiDrawObject

COPYRIGHT © SEGA ENTERPRISES, LTD., 1998,1999