G3_Shininess

# G3*_Shininess

## 構文

      #include <nitro/gx/g3imm.h>
      #include <nitro/gx/g3b.h>
      #include <nitro/gx/g3c.h>

      void G3_Shininess(const u32* table);

      // 以下ディスプレイリスト（コマンド列）作成用API
      void G3B_Shininess(GXDLInfo* info, const u32* table);
      void G3C_Shininess(GXDLInfo* info, const u32* table);
      void G3BS_Shininess(GXDLInfo* info, const u32* table);
      void G3CS_Shininess(GXDLInfo* info, const u32* table);

## 引数

info | コマンドリスト情報
table | 鏡面反射輝度テーブルへのポインタ

## 返り値

なし。

## 説明

鏡面反射輝度テーブルを設定します。鏡面反射の輝度を変換する 8ビット x 128 のテーブルを設定します。各要素はそれぞれ小数部8ビットの固定小数です。ただし、引数はu32へのポインタで4バイトアラインメントされている必要があります。`G3*_MaterialColorSpecEmi()` で、鏡面反射輝度テーブル・イネーブルフラグがFALSE以外に設定された場合、ジオメトリエンジンはスペキュラ計算結果を元にテーブルを引き、鏡面反射輝度の変換を行います。このテーブルの設定によって、鏡面反射の光り具合を調節することが可能です。また、鏡面反射輝度テーブルを書き換えることで、１フレーム中に複数の異なる鏡面反射効果を持ったポリゴンを表示出来ます。鏡面反射輝度テーブルを不規則な値に設定して、特殊なライティング効果を出すことも出来ます。
(注意) 通常は、輝度テーブルの値をスペキュラのn乗に設定することにより、意図した鏡面反射効果を得ることになります。スペキュラの値の上位7ビットがテーブルへのインデックスになります。

## 参照

G3_MaterialColorSpecEmi

## 履歴

Ver. 2004/02/09

- 説明の追加

Ver. 2004/01/19