@IliaNeverov

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

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

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

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

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

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

Похожие вопросы
CTRL+ Москва
от 250 000 до 320 000 ₽
CTRL+ Москва
от 200 000 до 300 000 ₽
CTRL+ Белград
от 250 000 до 320 000 ₽
22 нояб. 2024, в 00:55
500 руб./за проект
21 нояб. 2024, в 23:30
300000 руб./за проект
21 нояб. 2024, в 22:21
3000 руб./в час