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