2013-09-14 2 views
0

Я делаю OpenGL-игру с LWJGL и просто успешно реализовал атрибуты вершин вместе с VBO, теперь моя проблема заключается в том, что у меня есть небольшой пользовательский интерфейс, основанный на использовании slick-util, и это не визуализировать текстуры так, как должно быть, я думаю, это должно быть так, как пятно передает координаты текстуры шейдерам. Сейчас я передаю координаты текстуры в вершинном шейдере через атрибут вершины, как это:Не могу найти замену gl_MultiTexCoord0

pass_TextureCoord = in_TextureCoord; 

Когда я изменяю к этому:

pass_TextureCoord = gl_MultiTexCoord0; 

Все 3d вещи теряют свои текстуры и интерфейс возвращается нормальный.

ответ

1

gl_MultiTexCoord0 будет работать только с использованием функций указателя текстурной функции фиксированной функции. Не видя, как реализован slick-util, почти невозможно сказать вам, каково должно быть правильное поведение. Однако, если у вас есть опция, вы должны использовать общие указатели атрибутов вершин; glTexCoordPointer (...) устарел.

Тем не менее, если используется glTexCoordPointer (...), указатель применяется к активной текстурной единице. Убедитесь, что вы установили активный блок текстуры в GL_TEXTURE0, прежде чем использовать slick-util, чтобы установить указатель координат текстуры, если вы ожидаете, что gl_MultiTexCoord0 ссылается на ваши координаты текстуры.

+0

Итак, есть ли способ объединить пользовательский интерфейс от slick-util и атрибутов вершин? – user2054583

+0

@ user2054583: В худшем случае вы можете использовать другой вершинный шейдер при рендеринге пользовательского интерфейса slick-util. –

Смежные вопросы