Structure D3DLIGHT9
Définit un ensemble de propriétés d’éclairage.
Syntaxe
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;
Membres
-
Type
-
Type : D3DLIGHTTYPE
-
Type de la source de lumière. Cette valeur est l’un des membres du type énuméré D3DLIGHTTYPE .
-
Diffus
-
Type : D3DCOLORVALUE
-
Couleur diffuse émise par la lumière. Ce membre est une structure D3DCOLORVALUE .
-
Spéculaire
-
Type : D3DCOLORVALUE
-
Couleur spéculaire émise par la lumière. Ce membre est une structure D3DCOLORVALUE .
-
Ambiant
-
Type : D3DCOLORVALUE
-
Couleur ambiante émise par la lumière. Ce membre est une structure D3DCOLORVALUE .
-
Position
-
Type : D3DVECTOR
-
Position de la lumière dans l’espace mondial, spécifiée par une structure D3DVECTOR . Ce membre n’a aucune signification pour les lumières directionnelles et est ignoré dans ce cas.
-
Sens
-
Type : D3DVECTOR
-
Direction vers laquelle la lumière pointe dans l’espace du monde, spécifiée par une structure D3DVECTOR . Ce membre n’a de sens que pour les directions et les projecteurs. Ce vecteur n’a pas besoin d’être normalisé, mais il doit avoir une longueur différente de zéro.
-
Plage
-
Type : float
-
Distance au-delà de laquelle la lumière n’a aucun effet. La valeur maximale autorisée pour ce membre est la racine carrée de FLT_MAX. Ce membre n’affecte pas les lumières directionnelles.
-
Diminution
-
Type : float
-
Diminution de l’éclairage entre le cône interne d’un projecteur (l’angle spécifié par Theta) et le bord externe du cône externe (angle spécifié par Phi).
L’effet des retombées sur l’éclairage est subtil. En outre, une petite pénalité de performances est encourue en mettant en forme la courbe de repli. Pour ces raisons, la plupart des développeurs définissent cette valeur sur 1.0.
-
Atténuation0
-
Type : float
-
Valeur spécifiant la façon dont l’intensité lumineuse change sur la distance. Les valeurs d’atténuation sont ignorées pour les lumières directionnelles. Ce membre représente une constante d’atténuation. Pour plus d’informations sur l’atténuation, consultez Propriétés de la lumière (Direct3D 9). Les valeurs valides pour ce membre vont de 0,0 à l’infini. Pour les lumières non directionnelles, les trois valeurs d’atténuation ne doivent pas être définies sur 0,0 en même temps.
-
Atténuation1
-
Type : float
-
Valeur spécifiant la façon dont l’intensité lumineuse change sur la distance. Les valeurs d’atténuation sont ignorées pour les lumières directionnelles. Ce membre représente une constante d’atténuation. Pour plus d’informations sur l’atténuation, consultez Propriétés de la lumière (Direct3D 9). Les valeurs valides pour ce membre vont de 0,0 à l’infini. Pour les lumières non directionnelles, les trois valeurs d’atténuation ne doivent pas être définies sur 0,0 en même temps.
-
Atténuation2
-
Type : float
-
Valeur spécifiant la façon dont l’intensité lumineuse change sur la distance. Les valeurs d’atténuation sont ignorées pour les lumières directionnelles. Ce membre représente une constante d’atténuation. Pour plus d’informations sur l’atténuation, consultez Propriétés de la lumière (Direct3D 9). Les valeurs valides pour ce membre vont de 0,0 à l’infini. Pour les lumières non directionnelles, les trois valeurs d’atténuation ne doivent pas être définies sur 0,0 en même temps.
-
Theta
-
Type : float
-
Angle, en radians, du cône intérieur d’un projecteur - cône de projecteur entièrement éclairé. Cette valeur doit être comprise entre 0 et la valeur spécifiée par Phi.
-
Phi
-
Type : float
-
Angle, en radians, définissant le bord externe du cône externe du projecteur. Les points à l’extérieur de ce cône ne sont pas allumés par la lumière. Cette valeur doit être comprise entre 0 et pi.
Spécifications
Condition requise | Valeur |
---|---|
En-tête |
|
Voir aussi