Portieren von Texturfunktionen
Beachten Sie beim Portieren von IRIS GL-Texturfunktionen zu OpenGL die folgenden Punkte:
OpenGL verwaltet keine Tabellen mit Texturen. Sie verwendet entweder eine 1D-Textur und nur eine 2D-Textur. Um die Texturen aus Ihrem IRIS GL-Code wiederzuverwenden, legen Sie sie in einer Anzeigeliste ab.
OpenGL generiert nicht automatisch Mipmaps. Wenn Sie mipmaps verwenden, müssen Sie zuerst die Funktion gluBuild2DMipmaps aufrufen.
In OpenGL verwenden Sie glEnable und glDisable, um Texturfunktionen zu aktivieren und zu deaktivieren.
In OpenGL ist die Texturgröße strikter reguliert als in IRIS GL. Die Größe einer OpenGL-Textur muss wie die folgenden sein:
2 n + 2 b
wobei n eine ganze Zahl und b ist:
- 0, wenn die Textur keinen Rahmen hat
- 1, wenn die Textur über ein Rahmenpixel verfügt (OpenGL-Texturen können 1-Pixel-Rahmen aufweisen.)
In der folgenden Tabelle sind die IRIS GL-Texturfunktionen und ihre allgemeinen OpenGL-Entsprechungen aufgeführt.
| IRIS GL-Funktion | OpenGL-Funktion | Bedeutung |
|---|---|---|
| textdef2d | glTexImage2DglTexParameter gluBuild2DMipmaps |
Gibt ein 2D-Texturbild an. |
| textbind | glTexImage2DglTexParameter gluBuild2DMipmaps |
Wählt eine Texturfunktion aus. |
| tevdef | glTexEnv | Definiert eine Texturzuordnungsumgebung. |
| tevbind | glTexEnvglTexImage1D |
Wählt eine Texturumgebung aus. |
| t2 | glTexCoord | Legt die aktuellen Texturkoordinaten fest. |
| texgen | glTexGenglGetTexParameter gluBuild1DMipmaps gluBuild2DMipmaps gluScaleImage |
Steuert die Generierung von Texturkoordinaten. Skaliert ein Bild auf eine beliebige Größe. |
Weitere Informationen zur Texturierung finden Sie im OpenGL-Programmierhandbuch.
Dieses Thema enthält Informationen zu folgenden Themen.