Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Вывод текстуры в общем случае




Библиотека OpenGL может работать в один момент времени только с одной текстурой, называемой активной. Для работы с несколькими текстурами необходимо задавать имя для текстуры. Затем по имени выбирается, какая из текстур будет использоваться.

1. Включить поддержку текстурирование glEnable(GL_TEXTURE_2D).

2. Сгенерировать имена для текстур glGenTextures.

3. Установить текущую текстуру (glBindTexture).

4. Загрузить изображение. Преобразовать в формат OpenGL.

5. Загрузить текстуру glTexImage2D.

6. Если есть еще текстуры, то перейти на п3.

7. Установить текущую текстуру (glBindTexture)

8. Отрисовать объект. Перед каждой вершиной задать координаты в системе координат текстуры. glTexCoord2d(0,0);glVertex3f(1,0,0);.

 

При текстурировании возможна ситуация, когда один пиксел объекта накрывает несколько пикселов текстуры или наоборот. В этом случае требуется определиться с методом аппроксимации. Для этого служит функция glTexParameteri. Существует 2 вида аппроксимаций: возможность выбора ближайшего пиксела (GL_NEAREST) и линейная аппроксимация (GL_LINEAR).

Иногда возникает потребность размножить текстуру по поверхности, например для реализации упорядоченных структур. Для этого создается текстура маленького размера, а затем устанавливаются следующие параметры: glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);которые задают повторение по координатным осям текстуры S и T. При привязке координат текстуры значения координат S и T устанавливаются больше чем 1.





Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных