glLightf, fonction
La fonction glLightf retourne des valeurs de paramètre de source de lumière.
void WINAPI glLightf(
GLenum light,
GLenum pname,
GLfloat param
);
-
light
-
Identificateur d’une lumière. Le nombre de lumières possibles dépend de l’implémentation, mais au moins huit lumières sont prises en charge. Ils sont identifiés par des noms symboliques de la forme GL_LIGHTi où i est une valeur : 0 à GL_MAX_LIGHTS - 1.
-
pname
-
Paramètre de source de lumière à valeur unique pour la lumière. Les noms symboliques suivants sont acceptés.
Valeur Signification - GL_SPOT_EXPONENT
Le paramètre param est une valeur à virgule flottante unique qui spécifie la distribution d’intensité de la lumière. Les valeurs à virgule flottante sont mappées directement. Seules les valeurs de la plage [0, 128] sont acceptées.
L’intensité lumineuse effective est atténuée par le cosinus de l’angle entre la direction de la lumière et la direction de la lumière vers le sommet allumé, élevé à la puissance de l’exposant spot. Ainsi, les exposants de spot plus élevés entraînent une source de lumière plus concentrée, quel que soit l’angle de coupure du spot. L’exposant spot par défaut est 0, ce qui entraîne une distribution uniforme de la lumière.- GL_SPOT_CUTOFF
Le paramètre param est une valeur à virgule flottante unique qui spécifie l’angle de propagation maximal d’une source de lumière. Les valeurs à virgule flottante sont mappées directement. Seules les valeurs de la plage [0, 90] et la valeur spéciale 180 sont acceptées.
Si l’angle entre la direction de la lumière et la direction entre la lumière et le sommet en cours d’éclairage est supérieur à l’angle de coupure, la lumière est complètement masquée. Sinon, son intensité est contrôlée par l’exposant spot et les facteurs d’atténuation. Le seuil par défaut est de 180, ce qui entraîne une distribution uniforme de la lumière.- GL_CONSTANT_ATTENUATION, GL_LINEAR_ATTENUATION GL_QUADRATIC_ATTENUATION
Le paramètre param est une valeur à virgule flottante unique qui spécifie l’un des trois facteurs d’atténuation de la lumière. Les valeurs à virgule flottante sont mappées directement. Seules les valeurs non négatives sont acceptées.
Si la lumière est positionnelle, plutôt que directionnelle, son intensité est atténuée par la réciproque de la somme de : le facteur constant, le facteur linéaire multiplié par la distance entre la lumière et le sommet allumé, et le facteur quadratique multiplié par le carré de la même distance. Les facteurs d’atténuation par défaut sont (1,0,0), ce qui n’entraîne aucune atténuation. -
param
-
Spécifie la valeur sur laquelle le paramètre pname de la source de lumière sera défini sur.
Cette fonction ne retourne pas de valeur.
Les codes d’erreur suivants peuvent être récupérés par la fonction glGetError .
Nom | Signification |
---|---|
|
light ou pname n’était pas une valeur acceptée. |
|
Une valeur d’exposant spot a été spécifiée en dehors de la plage [0, 128], ou un seuil spot a été spécifié en dehors de la plage [0, 90] (à l’exception de la valeur spéciale 180), ou un facteur d’atténuation négatif a été spécifié. |
|
La fonction a été appelée entre un appel à glBegin et l’appel correspondant à glEnd. |
La fonction glLightf définit la ou les valeurs des paramètres de source de lumière individuels. Le paramètre light nomme la lumière et est un nom symbolique de la forme GL_LIGHTi, où 0 = i< GL_MAX_LIGHTS.
Le paramètre pname spécifie l’un des paramètres de la source de lumière, à nouveau par nom symbolique. Le paramètre param est une valeur unique ou un pointeur vers un tableau qui contient les nouvelles valeurs.
Le calcul de l’éclairage est activé et désactivé à l’aide de glEnable et glDisable avec GL_LIGHTING d’arguments. Lorsque l’éclairage est activé, les sources d’éclairage activées contribuent au calcul de l’éclairage. La source de lumière i est activée et désactivée à l’aide de glEnable et glDisable avec l’argument GL_LIGHTi.
Il est toujours le cas que GL_LIGHTi = GL_LIGHT0 + i.
Les fonctions suivantes récupèrent des informations relatives à la fonction glLightf :
glIsEnabled avec GL_LIGHTING d’arguments
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge |
Windows 2000 Server [applications de bureau uniquement] |
En-tête |
|
Bibliothèque |
|
DLL |
|