OpenGL: Eine Textur auf ein Dreieck zeichnen



  • Ich wollte euch fragen, ob es auch möglich ist auf ein Dreieck eine Textur zu zeichnen. Wie man Texturen auf ein Viereck zeichnet habe ich mittlerweile herrausgefunden. Ich würde mich freuen, wenn ihr mir ein Beispiel in der untenstehnden Form gibt.

    glBindTexture(GL_TEXTURE_2D, image->GetID()[0]);
    
    glBegin(GL_TRIANGLES);
    	glTexCoord2f(0.0f, 0.0f); glVertex3f(-0.5f, 0.5f, 0.0f);
    	...
    glEnd();
    

    Der Grund warum ich danach frage ist, dass ich nicht nur eckige Objekte, sondern auch teilweise abgerundete Objekte darstellen möchte.

    Viele Grüße,
    littletux



  • Hallo littletux,

    das Vorgehen beim Texturieren von Dreiecken ist identisch mit dem Vorgehen bei Quads. Es kommt darauf an, welche Texturkoordinaten du angibst.

    Bei einem Dreieck würde es z.B. so aussehen:

    glBegin(GL_TRIANGLES);   
    	glTexCoord2f(0.0f, 0.0f); glVertex3f( -0.5,  0, 0.0 );
    	glTexCoord2f(1.0f, 0.0f); glVertex3f(  0.5,  0, 0.0 );
    	glTexCoord2f(0.5f, 1.0f); glVertex3f(  0.0,  1.0, 0.0 );
    glEnd();
    

    Viele Grüße,
    MaBa


Anmelden zum Antworten