OpenGL - Teil einer Textur zeichnen
Verfasst: 28.08.2009, 20:29
Hallo,
bin noch relativ neu in der OpenGL Programmierung.
Ich möchte ein Quad mit einem Teil einer von mir vorher geladenen Textur texturieren:
i_X_Texture / i_Y_Texture sind hierbei die X / Y-Koordinaten auf der Textur (bspw. 192, 32) und i_Width und i_Height sind die rechten und unteren Kanten des Ausschnitts.
Leider bekomme ich hier nicht den Ausschnitt, sondern einen braunen Pixel zurück.
Wie kann ich denn die Texturkoordinaten so transformieren, dass ich die in Pixeln angeben kann?
Bin irgendwie momentan zu verplant, um diese Berechnung richtig zu machen.
Grüße
bin noch relativ neu in der OpenGL Programmierung.
Ich möchte ein Quad mit einem Teil einer von mir vorher geladenen Textur texturieren:
Code: Alles auswählen
glBindTexture(GL_TEXTURE_2D, sprite.i_Texture);
glBegin(GL_QUADS);
glTexCoord2i(i_X_Texture, i_Y_Texture);
glVertex2i(sprite.i_X, sprite.i_Y);
glTexCoord2i(i_X_Texture, i_Y_Texture + i_Width);
glVertex2i(sprite.i_X, sprite.i_Y + i_Width);
glTexCoord2i(i_X_Texture + i_Height, i_Y_Texture + i_Width);
glVertex2i(sprite.i_X + i_Height, sprite.i_Y + i_Width);
glTexCoord2i(i_X_Texture + i_Height, i_Y_Texture);
glVertex2i(sprite.i_X + i_Height, sprite.i_Y);
glEnd();
Leider bekomme ich hier nicht den Ausschnitt, sondern einen braunen Pixel zurück.
Wie kann ich denn die Texturkoordinaten so transformieren, dass ich die in Pixeln angeben kann?
Bin irgendwie momentan zu verplant, um diese Berechnung richtig zu machen.
Grüße