Platform SDK: DirectX

D3DMATERIAL7

D3DMATERIAL7 構造体は、IDirect3DDevice7::GetMaterial および IDirect3DDevice7::SetMaterial メソッドの呼び出しのマテリアル プロパティを指定する。

typedef struct _D3DMATERIAL7 {
    union {
        D3DCOLORVALUE   diffuse; 
        D3DCOLORVALUE   dcvDiffuse;
    };
    union {
        D3DCOLORVALUE   ambient; 
        D3DCOLORVALUE   dcvAmbient;
    };
    union {
        D3DCOLORVALUE   specular; 
        D3DCOLORVALUE   dcvSpecular;
    };
    union {
        D3DCOLORVALUE   emissive; 
        D3DCOLORVALUE   dcvEmissive;
    };
    union {
        D3DVALUE        power; 
        D3DVALUE        dvPower;
    };
} D3DMATERIAL7, *LPD3DMATERIAL7; 

メンバ

dcvDiffusedcvAmbientdcvSpecular、および dcvEmissive
それぞれ、マテリアルのディフーズ色、アンビエント色、スペキュラ色、エミッション色を指定する値。これらの値は D3DCOLORVALUE 構造体である。
dvPower
スペキュラ ハイライトの鮮明度を指定する D3DVALUE 型の値。マテリアルのスペキュラ ハイライトをオフにするには、このメンバを 0 に設定する。スペキュラ色成分を 0 に設定するだけでは不十分である。

注意

DirectX 7.0 で導入されたこの構造体は、旧バージョンの DirectX で使用された D3DMATERIAL 構造体に代わって使用される。

この構造体が従来の D3DMATERIAL 構造体と異なるのは、テクスチャ ハンドル (テクスチャ処理されたビューポート バックグラウンド) または従来のランプ ソフトウェア デバイスのランプ サイズをサポートしない点である。

動作環境

  Windows NT/2000 :Windows 2000 が必要。
  Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
バージョン :DirectX 7.0 が必要。
  ヘッダー : d3dtypes.h で宣言。

参照

IDirect3DDevice7::GetMaterialIDirect3DDevice7::SetMaterialライティングとマテリアル