Computergrafik

Texturraum

2D Texturen | | 2D Texturkoordinaten

2D Texturen sind als Einheitsquadrat im Texturraum definiert.
Die zwei Texturkoordinaten im Texturraum hei├čen typischerweise s und t ($s,t\in[0,1])$.

Die Abbildung auf die Geometrie erfolgt oft ├╝ber eine Zuordnung von Texturkoordinaten auf die entsprechenden Vertices als Attribute.

  • Attribute werden wie ├╝blich spezifiziert (Annahme: loc_texcoord enth├Ąlt den Verweis auf die entsprechende attribute Variable im Shader):
    glVertexAttrib2f (loc_texcoord, 0.1, 0.2);
    glVertex3f (0, 1, 0);
  • Im VBO werden die Attribute wie ├╝blich spezifiziert (Offset muss nat├╝rlich angepasst werden!):
    glEnableVertexAttribArray (loc_texcoord);
    glVertexAttribPointer     (loc_texcoord, 2, GL_FLOAT, GL_FALSE, 0,
                               (void *) (sizeof(float)*3*num_triangles));
  • Legacy-API: Der entsprechende OpenGL Befehl zur Definition von Texturkoordinaten als Vertexattribut lautet glTexCoord2f(s,t); f├╝r Koordinate #0,
    bzw. glMultiTexCoord*(unit_number, coords...); f├╝r die weiteren Koordinaten.
    Die Koordinaten kommen im Vertex-Shader in den Attributen gl_MultiTexCoord0 usw. an.


2D Texturen | | 2D Texturkoordinaten

Options: