D3DLIGHT9 構造体

照明プロパティのセットを定義します。

構文

typedef struct D3DLIGHT9 {
  D3DLIGHTTYPE  Type;
  D3DCOLORVALUE Diffuse;
  D3DCOLORVALUE Specular;
  D3DCOLORVALUE Ambient;
  D3DVECTOR     Position;
  D3DVECTOR     Direction;
  float         Range;
  float         Falloff;
  float         Attenuation0;
  float         Attenuation1;
  float         Attenuation2;
  float         Theta;
  float         Phi;
} D3DLIGHT9, *LPD3DLIGHT;

メンバー

Type

種類: D3DLIGHTTYPE

光源の種類。 この値は、 D3DLIGHTTYPE 列挙型のメンバーの 1 つです。

拡散光

型: D3DCOLORVALUE

ライトによって放出される拡散色。 このメンバーは D3DCOLORVALUE 構造体です。

反射

型: D3DCOLORVALUE

ライトによって出力される反射色。 このメンバーは D3DCOLORVALUE 構造体です。

環境光

型: D3DCOLORVALUE

ライトによって放射されるアンビエント カラー。 このメンバーは D3DCOLORVALUE 構造体です。

Position

型: D3DVECTOR

D3DVECTOR 構造体で指定されたワールド空間内のライトの位置。 このメンバーは方向ライトには意味がなく、その場合は無視されます。

方向

型: D3DVECTOR

D3DVECTOR 構造体で指定されたワールド空間でライトが指している方向。 このメンバーは、方向とスポットライトについてのみ意味を持ちます。 このベクトルは正規化する必要はありませんが、0 以外の長さを持つ必要があります。

Range

型: float

ライトが影響を及ぼす距離。 このメンバーの最大許容値は、FLT_MAXの平方根です。 このメンバーは方向ライトには影響しません。

フォールオフ

型: float

スポットライトの内円錐 (Theta で指定された角度) と外側コーンの外縁 (Phi で指定された角度) の間の照明の減少。

照明に対するフォールオフの影響は微妙です。 さらに、フォールオフ曲線を形成することで、わずかなパフォーマンス低下が発生します。 このような理由から、ほとんどの開発者はこの値を 1.0 に設定します。

減衰0

型: float

距離に対する光の強度の変化を示す値。 ディレクショナル ライトの減衰値は無視されます。 このメンバーは減衰定数を表します。 減衰の詳細については、「 Light Properties (Direct3D 9)」を参照してください。 このメンバーの有効な値の範囲は 0.0 から無限大です。 非方向ライトの場合、3 つの減衰値はすべて同時に 0.0 に設定しないでください。

減衰1

型: float

距離に対する光の強度の変化を示す値。 ディレクショナル ライトの減衰値は無視されます。 このメンバーは減衰定数を表します。 減衰の詳細については、「 Light Properties (Direct3D 9)」を参照してください。 このメンバーの有効な値の範囲は 0.0 から無限大です。 非方向ライトの場合、3 つの減衰値はすべて同時に 0.0 に設定しないでください。

減衰2

型: float

距離に対する光の強度の変化を示す値。 ディレクショナル ライトの減衰値は無視されます。 このメンバーは減衰定数を表します。 減衰の詳細については、「 Light Properties (Direct3D 9)」を参照してください。 このメンバーの有効な値の範囲は 0.0 から無限大です。 非方向ライトの場合、3 つの減衰値はすべて同時に 0.0 に設定しないでください。

シータ

型: float

スポットライトの内部円錐の角度 (ラジアン単位)、つまり、完全に照らされたスポットライト コーン。 この値は、0 から Phi で指定された値までの範囲である必要があります。

ファイ

型: float

スポットライトの外円錐の外側の端を定義する角度 (ラジアン単位)。 この円錐の外側のポイントはスポットライトによって照らされません。 この値は 0 から pi の間である必要があります。

要件

要件
ヘッダー
D3D9Types.h

関連項目

Direct3D 構造体

GetLight

SetLight