glTexImage: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
(Delphi-Spezifikation)
(Der Seiteninhalt wurde durch einen anderen Text ersetzt: '{{Hinweis|Dieser Artikel wurde wieder in glTexImage1D, glTexImage2D und glTexImage3D aufgeteilt.}}')
 
(31 dazwischenliegende Versionen von 13 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
= glTexImage =
+
{{Hinweis|Dieser Artikel wurde wieder in [[glTexImage1D]], [[glTexImage2D]] und [[glTexImage3D]] aufgeteilt.}}
 
 
<br>
 
== Name ==
 
'''glTexImage''' - Einstellungen zum Texturen zeichnen
 
 
 
<br>
 
== Spezifikation ==
 
procedure '''glTexImage1D'''(GLenum ''target'', GLint ''level'', GLint ''components'', GLsizei ''width'', GLsizei ''height'', GLint ''border'', <br> GLenum ''format'', GLenum ''type'', const GLvoid ''*pixels''); <br>
 
procedure '''glTexImage2D'''(GLenum ''target'', GLint ''level'', GLint ''components'', GLsizei ''width'', GLsizei ''height'', GLint ''border'', <br> GLenum ''format'', GLenum ''type'', const GLvoid ''*pixels'');
 
 
 
<br>
 
 
 
== Parameter ==
 
<table border=1 rules=all>
 
<tr>
 
<td>''target''</td>
 
<td>Gibt an, welche Texture erreicht werden soll.  '''GL_TEXTURE_2D''' wird akzeptiert.</td>
 
</tr>
 
<tr>
 
<td>''level''</td>
 
<td>Gibt den Detailgrad für das gewünschte Bild an. <br>
 
''level'' '''0''' ist das Basisbild. Level n ist die n-te Mipmap reduzierung des Bildes.</td>
 
</tr>
 
<tr>
 
<td>''components''</td>
 
<td>'''1''' - für '''R''' || '''2''' für '''R''' und '''A''' || '''3''' für '''RGB''' || '''4''' für '''RGBA'''</td>
 
</tr>
 
<tr>
 
<td>''width'',</td>
 
<td>Breite = Anzahl der Pixel pro Zeile <br> muss als Wert 2^n (+ 2 * (border) ) für n Integerwerte haben.</td>
 
</tr>
 
<tr>
 
<td>''height'',</td>
 
<td>Höhe = Anzahl der Zeilen <br> muss als Wert 2^n (+ 2 * (border) ) für n Integerwerte haben</td>
 
</tr>
 
<tr>
 
<td>''border'',</td>
 
<td>Breite des Rahmens || '''0''' oder '''1'''</td>
 
</tr>
 
<tr>
 
<td>''format''</td>
 
<td>Bestimmt das Format der Pixeldaten. Folgende symbolische Werte werden akzeptiert: <br>
 
'''GL_COLOR_INDEX, GL_STENCIL_INDEX, GL_DEPTH_COMPONENT, GL_RED, GL_GREEN, GL_BLUE, GL_ALPHA, GL_RGB, GL_RGBA, GL_LUMINANCE,''' und '''GL_LUMINANCE_ALPHA'''</td>
 
</tr>
 
<tr>
 
<td>''_type''</td>
 
<td>Bestimmt den Pixeltyp für den Inhalt von ''pixels''. Folgende Typen werden unterstützt:<br>
 
'''GL_UNSIGNED_BYTE, GL_BYTE, GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, GL_INT, GL_FLOAT, GL_BITMAP'''</td>
 
</tr>
 
<tr>
 
<td>''pixels''</td>
 
<td>Die Texture-Image Daten vom Typ, der in ''format'' angegeben wurde ( Array wo die Pixel gespeichert sind ) </td>
 
</tr>
 
</table>
 
 
 
<br>
 
 
 
== Beschreibung ==
 
''glTexImage'' nimmt die wichtige Einstellungen vor, die zum Zeichnen einer Textur unbedingt benötigt werden ( siehe Parameterliste ).
 
Gezeichnet werden die Texturen im ''glBegin()'' und ''glEnd()'' Block, immer abwechselnd mit [[glTexCoord]] und [[glVertex]].
 
Wenn als ''type'' GL_BITMAP gewählt wird, bestehen die Daten aus einer Reihe von ''unsigned bytes'' und als ''format'' muss GL_COLOR_INDEX eingestellt sein.<br>
 
Um das Zeichnen einer 2D Textur zu aktivieren: [[glEnable]](GL_TEXTURE_2D);
 
 
 
 
 
<br>
 
== Hinweise ==
 
 
 
 
 
<br>
 
== Fehlermeldungen ==
 
 
 
GL_INVALID_ENUM wird generiert wenn ''target'' kein GL_TEXTURE_2D ist.<br>
 
 
 
GL_INVALID_ENUM wird generiert wenn falsches ''format'' angegeben wurde. <br>
 
 
 
GL_INVALID_ENUM wird generiert wenn falscher ''type'' angegeben wurde. <br>
 
 
 
GL_INVALID_ENUM wird generiert wenn GL_BITMAP als ''type'' und '''kein''' GL_COLOR_INDEX als ''format'' angegeben wurde. <br>
 
 
 
GL_INVALID_VALUE wird generiert wenn ''level'' kleiner 0 oder größer ld(max) ist, wobei max der Rückgabewert von '''GL_MAX_TEXTURE_SIZE''' ist. (ld = Logarithmus Dualis = Basis 2). <br>
 
 
 
GL_INVALID_VALUE wird generiert wenn für ''components'' was anderes als ''1'', ''2'', ''3'' oder ''4'' angegeben wurde. <br>
 
 
 
GL_INVALID_VALUE wird generiert wenn ''width'' oder ''height'' kleiner als 0 oder größer als 2 + GL_MAX_TEXTURE_SIZE ist, oder die Bedingung  2^k + 2 * (border) (k=Integerwerte) nich erfüllt. <br>
 
 
 
GL_INVALID_VALUE wenn ''border'' nicht ''0'' oder ''1'' ist. <br>
 
 
 
GL_INVALID_OPERATION wird generiert wenn ''glTexImage2D'' in einem glBegin- und glEnd-Block ausgeführt wird. <br>
 
 
 
 
 
<br>
 
 
 
== Siehe auch ==
 
[[glTexEnv]], [[glTexGen]], [[glTexImage1D]], [[glTexImage2D]], [[glTexImage3D]], [[glTexSubImage1D]], [[glTexSubImage2D]], [[glTexSubImage3D]], [[glTexParameter]], [[glTexCoord]]
 
 
 
[[Kategorie:GL|TexImage]]
 

Aktuelle Version vom 29. April 2009, 11:14 Uhr

Info DGL.png Dieser Artikel wurde wieder in glTexImage1D, glTexImage2D und glTexImage3D aufgeteilt.