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
GL _ INVALID _ ENUM
light oder pname war kein akzeptierter Wert.
GL _ UNGÜLTIGER _ 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.
UNGÜLTIGER _ _ GL-VORGANG
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:

glGetLight

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
Gl.h
Bibliothek
Opengl32.lib
DLL
Opengl32.dll

Weitere Informationen

glBegin

glColorMaterial

glEnd

glLightModel

glMaterial