##### Ninjaライブラリ - 構造体

# NJS_MATERIAL

モデルのマテリアルデータを格納する

### 定義

      typedef struct {
              NJS_COLOR       diffuse;
              NJS_COLOR       specular;
              Float           exponent;
              Uint32          attr_texId;
              Uint32          attrflags;
      } NJS_MATERIAL;

### メンバ

  diffuse | ディフューズ(拡散反射)色の(0〜255)
  specular | スペキュラ(鏡面反射)の色(0〜255)
  exponent | 指数(ハイライトの広がり)
  attr_texId | アトリビュートとテクスチャID
  attrflags | アトリビュートフラグ

### 解説

  モデルのマテリアルデータを格納する構造体です。 アトリビュートとテクスチャIDのメンバattr_texIdは、0bit〜28bitはテクスチャリスト におけるテクスチャ番号、31bit〜29bitはシステム予約です。 アトリビュートフラグのメンバattrflagsの各ビットは次のようになっています。

  Bit | 意味
  31〜29 | αブレンディングパラメータ(SRC)
  28〜26 | αブレンディングパラメータ(DST)
  25 | 光源無視フラグ（1の時無視）
  24 | フラットシェーディング(オン・オフ)
  23 | 両面ポリゴン（オン・オフ）
  22 | 環境マッピング（オン・オフ）
  21 | テクスチャ（有効・無効）
  20 | α（有効・無効）
  19 | スペキュラ無視（1の時無視）
  18〜17 | フリップ制御
  16〜15 | クランプ制御
  14〜13 | 0：Point Sampled ／ 1：Bilinear Filter ／ 2：Trilinear Filter
  11〜 8 | Anisotropic Filter
  7 | ミップマップレンジの調整16段階
  6〜0 | 未使用

NJS_MATERIAL

COPYRIGHT © SEGA ENTERPRISES, LTD., 1998,1999