1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
unsigned int uiTexture;
unsigned int uiTextureIl;
ilGenImages( 1, &uiTextureIl );
ilBindImage( uiTextureIl );
//Chargement OK
if( ilLoadImage(szImage ) == IL_FALSE )
{
ilDeleteImages( 1, &uiTextureIl );
return 0;
}
glGenTextures(1, &uiTexture);
glBindTexture(GL_TEXTURE_2D, uiTexture);
glTexImage2D( GL_TEXTURE_2D,
0,
ilGetInteger(IL_IMAGE_BPP),
ilGetInteger(IL_IMAGE_WIDTH),
ilGetInteger(IL_IMAGE_HEIGHT),
0,
ilGetInteger(IL_IMAGE_FORMAT),
GL_UNSIGNED_BYTE,
ilGetData());
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP);
ilDeleteImages(1, &uiTextureIl);
//Affichage
glEnable(GL_TEXTURE_2D);
glBindTexture( GL_TEXTURE_2D, uiTexture );
glColor3f( 0.0f, 0.0f, 0.0f); // couleur qui s'affiche à la place de ma texture
glBegin(GL_QUADS);
glTexCoord2i( 0, 0 );
glVertex2f( 0.0f, 0.0f );
glTexCoord2i( 1, 0 );
glVertex2f( fWidth, 0.0f );
glTexCoord2i( 1, 1 );
glVertex2f( fWidth, -fHeight );
glTexCoord2i( 0, 1 );
glVertex2f( 0.0f, -fHeight );
glEnd(); |
Partager