@IliaNeverov

Как привязать текстуру к определенному VAO?

Как привязать определенную текстуру к определенному VAO, так чтобы на одном обьекте в сцене отображалась одна текстура, а на другом другая?
И еще один вопрос - текстурные блоки нужны для того чтобы на одном обьекте отобразить несколько текстур или для моей цели(и почему их тогда только 16 можно использовать)?
  • Вопрос задан
  • 83 просмотра
Решения вопроса 1
gbg
@gbg Куратор тега C++
Баянист. Тамада. Услуги.
Важно понимать, что во времена шейдеров и мегатекстур, все это стало условностями.
Текстура - это просто большущий растр, на котором могут хранится "текстуры" хоть от всех объектов сцены - вопрос в координатах.

glBindTexture() // выбрать текстуру
glActiveTexture(GL_TEXTURE0) //прицепить ее в текстурный модуль

glBindTexture() // выбрать еще текстуру
glActiveTexture(GL_TEXTURE1) //прицепить ее в другой текстурный модуль

В шейдере создаете два семплера.
sampler2D a;
sampler2D b;
В семплеры грузите номера текстурных модулей:
glUniform1i( id_a, 0);
glUniform1i( id_a, 1);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы