glLightf-Funktion
Die glLightf-Funktion gibt Light Source-Parameterwerte zurück.
Syntax
void WINAPI glLightf(
GLenum light,
GLenum pname,
GLfloat param
);
Parameter
-
light
-
Der Bezeichner eines Lichts. Die Anzahl möglicher Beleuchtungen hängt von der Implementierung ab, aber es werden mindestens acht Beleuchtungen unterstützt. Sie werden durch symbolische Namen der Form GL LIGHT i identifiziert, wobei i ein Wert _ ist: 0 bis GL MAX LIGHTS - _ _ 1.
-
pname
-
Ein einwertigen Light Source-Parameter für light. Die folgenden symbolischen Namen werden akzeptiert.
Wert Bedeutung - GL _ SPOT _ EXPONENT
Der Parameter param ist ein einzelner Gleitkommawert, der die Intensitätsverteilung des Lichts angibt. Gleitkommawerte werden direkt zugeordnet. Nur Werte im Bereich [ 0, 128 ] werden akzeptiert.
Die effektive Lichtstärke wird durch den Kosinus des Winkels zwischen der Lichtrichtung und der Richtung vom Licht zum scheitelierten Scheitelpunkt abgedämpft, der zur Potenz des Spot-Exponenten erhöht wird. Daher führen höhere Spot-Exponenten unabhängig vom Spot-Abschneidewinkel zu einer fokussierteren Lichtquelle. Der Standard-Spot-Exponent ist 0, was zu einer gleichmäßigen Lichtverteilung führt.- GL _ SPOT _ CUTOFF
Der Parameter param ist ein einzelner Gleitkommawert, der den maximalen Strichwinkel einer Lichtquelle angibt. Gleitkommawerte werden direkt zugeordnet. Nur Werte im Bereich [ 0, 90 und dem ] Sonderwert 180 werden akzeptiert.
Wenn der Winkel zwischen der Lichtrichtung und der Richtung vom Licht zum scheitelierten Scheitelpunkt größer ist als der Abschneidewinkel, wird das Licht vollständig maskiert. Andernfalls wird die Intensität durch den Spot-Exponenten und die Dämpfungsfaktoren gesteuert. Der Standard-Spot-Cutoff ist 180, was zu einer gleichmäßigen Lichtverteilung führt.- GL _ CONSTANT _ ATTENUATION, GL _ LINEAR _ ATTENUATION, GL _ QUADRATIC _ ATTENUATION
Der Parameter param ist ein einzelner Gleitkommawert, der einen der drei Lichtdämpfungsfaktoren angibt. Gleitkommawerte werden direkt zugeordnet. Es werden nur nicht negative Werte akzeptiert.
Wenn das Licht positional und nicht direktional ist, wird seine Intensität durch den Kehreffekt der Summe von abgedämpft: der konstante Faktor, der lineare Faktor multipliziert mit dem Abstand zwischen dem Licht und dem scheitelierten Scheitelpunkt und der quadratische Faktor multipliziert mit dem Quadrat desselben Abstands. Die Standarddämpfungsfaktoren sind (1,0,0), was zu keiner Dämpfung führt. -
param
-
Gibt den Wert an, auf den der Parameter pname der Lichtquelle festgelegt wird.
Rückgabewert
Diese Funktion gibt keinen Wert zurück.
Fehlercodes
Die folgenden Fehlercodes können von der glGetError-Funktion abgerufen werden.
| Name | Bedeutung |
|---|---|
|
light oder pname war kein akzeptierter Wert. |
|
Ein Spot-Exponentwert wurde außerhalb des Bereichs von 0, 128 oder spot cutoff außerhalb des Bereichs 0, 90 (mit Ausnahme des Sonderwerts [ ] [ 180) angegeben, oder es wurde ein negativer Dämpfungsfaktor ] angegeben. |
|
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEnd aufgerufen. |
Bemerkungen
Die glLightf-Funktion legt den Wert oder die Werte einzelner Lichtquellenparameter fest. Der Lichtparameter benennt das Licht und ist ein symbolischer Name der Form GL _ LIGHT i, wobei 0 = i < GL MAX _ LIGHTS _ ist.
Der pname-Parameter gibt einen der Light Source-Parameter an, wiederum durch symbolischen Namen. Der Parameter param ist entweder ein einzelner Wert oder ein Zeiger auf ein Array, das die neuen Werte enthält.
Die Beleuchtungsberechnung wird mit glEnable und glDisable mit dem Argument GL LIGHTING aktiviert und _ deaktiviert. Wenn die Beleuchtung aktiviert ist, tragen die aktivierten Lichtquellen zur Beleuchtungsberechnung bei. Die Lichtquelle i ist aktiviert und deaktiviert, indem glEnable und glDisable mit dem Argument GL _ LIGHT i verwendet werden.
Es ist immer der Fall, dass GL _ LIGHT i = GL _ LIGHT0 + i ist.
Die folgenden Funktionen rufen Informationen im Zusammenhang mit der glLightf-Funktion ab:
glIsEnabled mit Argument GL _ LIGHTING
Requirements (Anforderungen)
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) |
Windows 2000 Professional [nur Desktop-Apps] |
| Unterstützte Mindestversion (Server) |
Windows 2000 Server [nur Desktop-Apps] |
| Header |
|
| Bibliothek |
|
| DLL |
|