##### Ninjaライブラリ - ライト関数

# njCnkSetSimpleMultiLightVector

njCnkSimpleMultiDrawObject(njCnkSimpleMultiDrawObject)用ライトの光源方向設定(平行光源)

### 書式

  void njCnkSetSimpleMultiLightVector( x, y, z )
  float x
  float y
  float z

### 引数

  x | ライトの単位方向ベクトル(X)
  y | ライトの単位方向ベクトル(Y)
  z | ライトの単位方向ベクトル(Z)

### 戻値

  なし

### 解説

  njCnkSimpleMultiDrawObject(njCnkSimpleMultiDrawObject)用の平行光源の方向を設定します。

  引数には使用するライトの単位方向ベクトルの成分を入れてください。

### 用例

      sbInitSystem( NJD_RESOLUTION_640x240_NTSCNI, NJD_FRAMEBUFFER_MODE_RGB565, 1 );
      njInitVertexBuffer( 1000000, 0, 1000, 0, 0 );
      njInitMatrix( matrix, 8 , 0);
      njInit3D( vbuf, 4096 );
      njInitView( &view );
      njSetView( &view );
      /* チャンクライトを4個設定 */
      njCnkSetSimpleMultiLight( 4 );
      /* チャンクライトの平行光源(1番目の光源)方向設定 */
      njCnkSetSimpleMultiLightVector(0.f, 0.f, -1.f);
      /* チャンクライトの点光源位置設定 */
      /* 2番目の光源(点光源)の設定 */
      njCnkSetSimpleMultiLightPoint(NJD_CNK_EASY_MULTILIGHT_2, 0.f, 0.f, -12.f);
      /* 3番目の光源(点光源)の設定 */
      njCnkSetSimpleMultiLightPoint(NJD_CNK_EASY_MULTILIGHT_3, 0.f, 0.f, -12.f);
      /* チャンクライトの点光源範囲(距離)設定 */
      njCnkSetSimpleMultiLightRange(NJD_CNK_EASY_MULTILIGHT_2, 6.f, 40.f);
      njCnkSetSimpleMultiLightRange(NJD_CNK_EASY_MULTILIGHT_3, 6.f, 40.f);
      njCnkSetSimpleMultiLightRange(NJD_CNK_EASY_MULTILIGHT_4, 6.f, 40.f);
      /* チャンクライトのアンビエント色設定 */
      njCnkSetSimpleMultiAmbient(0.1f, 0.1f, 0.1f);
      /* チャンクライトの光源色設定 */
      njCnkSetSimpleMultiLightColor(NJD_CNK_EASY_MULTILIGHT_1, 0.6f, 0.5f, 0.3f);
      njCnkSetSimpleMultiLightColor(NJD_CNK_EASY_MULTILIGHT_2, 1.f, 0.5f, 0.5f);
      njCnkSetSimpleMultiLightColor(NJD_CNK_EASY_MULTILIGHT_3, 0.5f, 1.f, 0.5f);
      njCnkSetSimpleMultiLightColor(NJD_CNK_EASY_MULTILIGHT_4, 0.5f, 0.5f, 1.f);
      	：
      njClearMatrix();
      /* チャンクライトの方向・位置の反映 */
      njCnkSetSimpleMultiLightMatrices();
      njTranslate( NULL, 0.f, 0.f, -10.f );
      njRotateXYZ( NULL, rx,ry,rz );
      njCnkSimpleMultiDrawObject;

### 備考

  この関数を用いて行った設定はnjCnkSetSimpleMultiLightMatrices()を呼ぶことで反映されます。

### 参照

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

njCnkSetSimpleMultiLightVector

COPYRIGHT © SEGA ENTERPRISES, LTD., 1998