njSetConstantMaterial
モデルマテリアルの設定

### 書　式

      #include <Ninja.h>
      void      njSetConstantMaterial( argb )
      NJS_ARGB  *argb

### 引　数

NJS_ARGB *argb
  マテリアルデータ(-1.0f〜+1.0f)

### 返　値

  なし

### エラー

  なし

### 機　能

  - モデルのマテリアルデータを指定します。
  - njControl3Dが定義されない限り値を参照しないので、初期値不定となります。
  - njControl3DにNJD_CONTROL_3D_CONSTANT_MATERIAL または、NJD_CONTROL_3D_OFFSET_MATERIALを指定したとき有効になります。
  - NJD_CONTROL_3D_CONSTANT_MATERIALを指定したときは、指定したマテリアルでモデルを描画します。
  - NJD_CONTROL_3D_OFFSET_MATERIALを指定したときは、モデルデータのマテリアルに、指定したマテリアルを加えて描画します。また、スプライト描画のカラー演算にも使用します。

### 用　例

  モデルがすべて半透明で表示されます。

      sbInitSystem( NJD_RESOLUTION_640x240_NTSCNI, NJD_FRAMEBUFFER_MODE_RGB565, 1 );
      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_OFFSET_MATERIAL );
      njSetConstantAttr( 0xFFFFFFFF, NJD_FLAG_USE_ALPHA)  /* モデルに半透明が設定されていない場合 */
      argb.a = -0.5f;
      argb.r = 0.f;
      argb.g = 0.f;
      argb.b = 0.f;
      njSetConstantMaterial( &argb );

      while(1) {
        njClearMatrix();
        njTranslate( NULL, 0.f, 0.f, -10.f );
        njRotateXYZ( NULL, xx,yy,zz );
        njDrawModel( model );
        xx += 257;
        yy += 179;
        zz += 193;
        njWaitVSync();
      }

### 備　考

### 関　連

  njInit3D
  njControl3D
  njDrawModel
  njDrawObject
  njDrawSprite2D
  njDrawSprite3D

njSetConstantMaterial |