Texture Stage: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
(Neuer Artikel - Bitte korrekturlesen)
 
K (wish->done)
 
Zeile 1: Zeile 1:
 
Eine '''Texture Stage''' ist ein ''"Objekt"'' auf welches Texturen abgelegt werden können.
 
Eine '''Texture Stage''' ist ein ''"Objekt"'' auf welches Texturen abgelegt werden können.
  
Bevor [[Multitexturing]] in [[OpenGL]] verfügbar war, besaß die GL nur eine Textur Stage. Das hieß, das zu einem Zeitpunkt genau eine Textur aktiv sein konnte.
+
Bevor [[Multitexturing]] in [[OpenGL]] verfügbar war, besaß die GL nur eine Textur Stage. Das hieß, dass zu einem Zeitpunkt genau eine Textur aktiv sein konnte.
  
 
Auf den ersten Blick scheint dies genug, doch gab es Anwendungsfälle (z.B. [[Lightmap]]s, [[Decal]]s) bei denen es von Vorteil wäre, wenn man mehrere Texturen benutzen könnte um einen Vertex einzufärben.
 
Auf den ersten Blick scheint dies genug, doch gab es Anwendungsfälle (z.B. [[Lightmap]]s, [[Decal]]s) bei denen es von Vorteil wäre, wenn man mehrere Texturen benutzen könnte um einen Vertex einzufärben.
Zeile 11: Zeile 11:
  
  
Standardmäßig ist die Texture Stage 0 (GL_TEXTURE0) aktiv. Wenn man mit [[glActiveTexture]] eine andere Textureinheit (die deutsche Bezeichnung für Texture Stage) aktiviert, dann beziehen sich alle nachfolgenden Texturbefehle (wie z.B. Texturmatrix manipulationen, oder das Binden von Texturen) auf diese Einheit.  
+
Standardmäßig ist die Texture Stage 0 (GL_TEXTURE0) aktiv. Wenn man mit [[glActiveTexture]] eine andere Textureinheit (die deutsche Bezeichnung für Texture Stage) aktiviert, dann beziehen sich alle nachfolgenden Texturbefehle (wie z.B. Texturmatrix Manipulationen, oder das Binden von Texturen) auf diese Einheit.  
  
 
Eine Textureinheit besteht aus aus dem Texturierungsaktivations-Status, einem Texturen-Matrizenstack, Texturumgebungseinstellungen und der momentan gebundenen Textur. Modifikation dieser Eigenschaften hat nur auf die aktuell aktive Textureinheit Effekt.
 
Eine Textureinheit besteht aus aus dem Texturierungsaktivations-Status, einem Texturen-Matrizenstack, Texturumgebungseinstellungen und der momentan gebundenen Textur. Modifikation dieser Eigenschaften hat nur auf die aktuell aktive Textureinheit Effekt.

Aktuelle Version vom 21. April 2006, 16:50 Uhr

Eine Texture Stage ist ein "Objekt" auf welches Texturen abgelegt werden können.

Bevor Multitexturing in OpenGL verfügbar war, besaß die GL nur eine Textur Stage. Das hieß, dass zu einem Zeitpunkt genau eine Textur aktiv sein konnte.

Auf den ersten Blick scheint dies genug, doch gab es Anwendungsfälle (z.B. Lightmaps, Decals) bei denen es von Vorteil wäre, wenn man mehrere Texturen benutzen könnte um einen Vertex einzufärben.


Ab OpenGL 1.2 verfügte die GL über eine ARB-Extension welche Multitexturing verfügbar machte. (Seit OpenGL 1.3 sind die Funktionen dieser Extension als Kernfunktion verfügbar.)

Das heißt, dass man einem Punkt mehrere Farbwerte aus verschiedenen Texturen zuweisen konnte.


Standardmäßig ist die Texture Stage 0 (GL_TEXTURE0) aktiv. Wenn man mit glActiveTexture eine andere Textureinheit (die deutsche Bezeichnung für Texture Stage) aktiviert, dann beziehen sich alle nachfolgenden Texturbefehle (wie z.B. Texturmatrix Manipulationen, oder das Binden von Texturen) auf diese Einheit.

Eine Textureinheit besteht aus aus dem Texturierungsaktivations-Status, einem Texturen-Matrizenstack, Texturumgebungseinstellungen und der momentan gebundenen Textur. Modifikation dieser Eigenschaften hat nur auf die aktuell aktive Textureinheit Effekt.


Siehe Auch

glActiveTexture, Multitexturing

Tutorial MultiTexturing DGL-Tutorial zum Thema Multitexturing