Текстурирование не работает - PullRequest
0 голосов
/ 09 февраля 2010

Я использую код с этого сайта: http://www.spacesimulator.net/tut4_3dsloader.html

Это работает в их примере проекта, но когда я поместил код в класс для более легкого и более модульного использования, текстура не появляется на объекте.

Я дважды проверил правильность идентификатора текстуры, отлаживая их рядом. В моем проекте я получаю пустой белый объект, а пример работает нормально.

Есть ли какие-либо способы рассказать, что происходит под капотом? Любые функции ошибок, которые я могу вызвать, могут подсказать, что происходит? Прямо сейчас я просто догадываюсь. (Да, я включил 2D текстуры.

Спасибо, ТАК!

Ответы [ 2 ]

1 голос
/ 09 февраля 2010

glGetLastError ()

или glGetError ()

что бы это ни было ...

убедитесь, что glEnable (GL_TEXTURE_2D);

и убедитесь, что ваша текстура связана, используя glBindTexture

убедитесь, что есть текстурные координаты, которые визуализируются, и что они правильные (если они все одинаковые или имеют одно и то же неинициализированное значение, вы получите один цвет для всего этого)

мммм .... убедитесь, что ваша матрица текстур не прикручена ... glMatrixMode (GL_TEXTURE); glLoadIdentity (); если вы не используете его ...

тогда умм ....

убедитесь, что данные, загружаемые при загрузке текстуры, правильные.

убедитесь, что у вас есть mipmapping, который вы загружаете в mip-карты, иначе, если у вас объект с другим масштабом, вы можете не получить никакой текстуры ...

ммм ... это все, что я могу думать о макушке.

EDIT:

ооо, я только что вспомнил одну, которая однажды меня настигла:

изменив структуру, вы могли изменить порядок инициализации приложения.

УБЕДИТЕСЬ, что вы не пытаетесь загрузить текстуры ДО ТОГО, как вы инициализируете opengl (с контекстами устройства или чем-то еще, я был под windows)

0 голосов
/ 09 февраля 2010

Убедитесь, что вы загружаете полную текстуру .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...