Visual Studio 2010 — загрузка изображения на экране с использованием SOIL в C ++ не работает

используя библиотеку SOIL, я попытался загрузить изображение под сетку, которую я нарисовал;
это код для этой функции:

void ModelGL:: LoadTexture()
{
texture[0] = SOIL_load_OGL_texture("images/GolSa.png",SOIL_LOAD_AUTO,SOIL_CREATE_NEW_ID,SOIL_FLAG_INVERT_Y);

//if(texture[0] == 0)
//exit(1);// Typical Texture Generation Using Data From The Bitmap
glBindTexture(GL_TEXTURE_2D, texture[0]);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);

glBindTexture(GL_TEXTURE_2D, texture[0]);
glBegin(GL_QUADS);
//Bottom Face (true)
glTexCoord2f(1.0f, 1.0f); glVertex3f(1.0f, -1.0f, -1.0f);
glTexCoord2f(0.0f, 1.0f); glVertex3f( -1.0f, -1.0f, -1.0f);
glTexCoord2f(0.0f, 0.0f); glVertex3f( -1.0f, -1.0f,  1.0f);
glTexCoord2f(1.0f, 0.0f); glVertex3f(1.0f, -1.0f,  1.0f);
glEnd();

glDisable(GL_TEXTURE_2D);

}

но на выходе я не вижу картинки;

0

Решение

до или после glBindTexture(...) пытаться glActiveTexture(GL_TEXTURE0)

редактировать:
Быть то, что вы используете glTexCoords*(...) вы должны сначала включить их glEnable(GL_TEXTURE_2D) перед их использованием.

Вот пример текстурированного куба:
http://www.gamasutra.com/view/feature/131768/understanding_and_using_opengl_.php?print=1
Читать раздел A First Try at Texturing

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]