Navigationslinks überspringen  
Navigationslinks überspringen

Light

Die WebDevice besitzt zwei Lichter:  Ligthts0 und Ligthts1.

Licht kann auf drei Arten verwendet werden:
1. Als direktionales Licht. Das ist default. In diesem Fall ist die vierte Koordinate der Position = 0.
2. Als Punktlicht: Die die vierte Koordinate der Position = 1, und spotCutoff ist 180.
3. Als Spotlicht: Die die vierte Koordinate der Position = 1, spotCutoff ist 0 und spotCosCutoff gibt den Cosinus des Lichtkegels an.

Für Puntktlicht und Spotlicht ist die Abnahme der Helligkeit relativ zum Abstand der Lichtquelle zum Oberflächenpunkt in den Feldern
constantAttenuation,
linearAttenuation und
quadraticAttenuation gespeichert.
Die constantAttenuation ist eine konstante Abnahme des Lichtes. Sie ist default = 1. In diesem Fall ist keine Abnahme. Die linearAttenuation ist linear,die quadraticAttenuation ist quadratisch bezüglich des Abstandes der Lichtquelle zum Oberflächenpunkt.

Beispiel von einem Licht (Punktlicht) in WebGL:

 

das Ergebnis:

Beispiel von einem Licht (SpotLight) in WebGL:
das Ergebnis:

 

Die Klasse Lights enthält folgende Felder:

LinearAttenuation:

Die lineare Abnahme des Lichtes.

QuadraticAttenuation:

Die quadratische Abnahme des Lichtes.

Enable:

Damit wird das Licht ein oder ausgeschaltet. Die Werte sind 1 (einschalten) oder 0 (ausschalten) Für Lights0 ist Enable = 1.

Ambient:

Der Ambientanteil des Lichtes.

Diffuse:

Der Diffusanteil des Lichtes.

Specular:

Der Specularanteil des Lichtes.

spotDirection:

Die Richtung für ein Spotlicht.

spotExponent:

Die exponetielle Abnahme für ein Spotlicht.

spotCutoff:

Ist 180 für ein Punktlicht, wobei die w-Koordinate der Position 1 ist. Wird ein Spot verwendet, so muss die w-Koordinate=0 sein und in spotCosCutoff der cosinus des Winkels des Lichtes gesetzt sein.
 

spotCosCutoff:

Enthält den Cosinus des Spotlichtes.

Direction:

Die Richtung des Lichtes.

Position:

Die Position des Lichtes vom Typ xyzf. Siehe spotCutoff, spotCosCutoff,
 
Copyright © Drawing3D inc