🔒 Locked
Multiple Textures
Advertisement
Original Post
Hiya, i'm a little new to OpenGL and i've got a problem. I'm able to apply a single texture and all but i get an error when i try more than one ("Debug Assertioan Failed!"). This seems to be happening when i loop through the textures applying them and freeing them up, but i'm not sure whats wrong. Thanx in advance...
int LoadGLTextures()
{
bool Status=FALSE;
AUX_RGBImageRec *Image[2];
memset(Image,0,sizeof(void *)*3);
if((Image[0]=LoadBMP("Text1.bmp")) && (Image[1]=LoadBMP("Text2.bmp")) && (Image[2]=LoadBMP("Text3.bmp")))
{
Status = TRUE;
glGenTextures(3, &texture[0]);
for(num=0; num < 3; num++)
{
glBindTexture(GL_TEXTURE_2D, texture[num]); //select which texture to fill
glTexImage2D(GL_TEXTURE_2D, 0, 3, Image[num]->sizeX, Image[num]->sizeY, 0, GL_RGB, GL_UNSIGNED_BYTE, Image[num]->data);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); //linear filtering
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
}
}
for(num=0; num < 3; num++)
{
if(Image[num])
{
if(Image[num]->data)
{
free(Image[num]->data);
}
free(Image[num]);
}
}
return Status;
}
{
bool Status=FALSE;
AUX_RGBImageRec *Image[2];
memset(Image,0,sizeof(void *)*3);
if((Image[0]=LoadBMP("Text1.bmp")) && (Image[1]=LoadBMP("Text2.bmp")) && (Image[2]=LoadBMP("Text3.bmp")))
{
Status = TRUE;
glGenTextures(3, &texture[0]);
for(num=0; num < 3; num++)
{
glBindTexture(GL_TEXTURE_2D, texture[num]); //select which texture to fill
glTexImage2D(GL_TEXTURE_2D, 0, 3, Image[num]->sizeX, Image[num]->sizeY, 0, GL_RGB, GL_UNSIGNED_BYTE, Image[num]->data);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); //linear filtering
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
}
}
for(num=0; num < 3; num++)
{
if(Image[num])
{
if(Image[num]->data)
{
free(Image[num]->data);
}
free(Image[num]);
}
}
return Status;
}
Topic Locked
This topic has been locked by a moderator. New replies are not allowed.
Sign in to reply to this topic.
Advertisement