Текстурный блок iPhone OpenGL ES - PullRequest
2 голосов
/ 03 декабря 2011

Я новичок в написании OpenGL ES для iPhone. Я пытаюсь визуализировать текстуру yuv, но меня очень смущает концепция текстурного блока.

Если я изменю второй параметр glUniform1i с другой комбинацией, полученное изображение будет другим. У меня вопрос, как настроен этот 0 или 1 текстурный блок? Как правильно его использовать?

Edit: Глупый я ... забыл назвать это:

glTexParameteri(GL_TEXTURE_2D, GL_MIN_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_MAG_FILTER, GL_NEAREST);

1 Ответ

2 голосов
/ 22 декабря 2011

Вы можете привязать текстуру к доступному текстурному блоку, используя следующий код:

glActiveTexture(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_2D, texture1);

glActiveTexture(GL_TEXTURE1);
glBindTexture(GL_TEXTURE_2D, texture2);

Предполагается, что вы правильно настроили texture1 и texture2, конечно.

Когда приходит время связать ваши текстуры с вашими шейдерами, вы указываете, к какой единице текстуры должна быть привязана данная текстура, используя следующий код:

glUniform1i(texture1Index, 0);
glUniform1i(texture2Index, 1);

, где texture1Index и texture2Indexиндексы соответствующей формы для вашего шейдера.0 и 1 соответствуют единицам текстуры, к которым мы привязали текстуры ранее.

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