Режим GL_CLAMP_TO_EDGE

Полезным может оказаться также режим GL_EYE_LINEAR, который позволяет получать ненормированный вектор от наблюдателя. Для предотвращения появления артефактов в случаях, когда точка на поверхности куба, соответствующая текстурным координатам, подходит слишком близко к какому-либо из его ребер, вместо GL_REPEAT (ИЛИ GL_CLAMP) следует применить режим GL_CLAMP_TO_EDGE () при задании отсечения текстурных координат (texture wrapping). Задание этого режима осуществляется следующими командами: glTexParameteri ( GL_TEXTURE_CUBEJMAP_ARB, GL_TEXTURE_WRAP_S,GL_CLAMP_TO_EDGE ); glTexParameteri (GL_TEXTURE_CUBEJMAP_ARB, GL_TEXTURE_WRAP_T,GL_CLAMP_TO_EDGE ); Обратите внимание, что данный режим устанавливается только для s и t, поскольку отсечение координат происходит в пределах одной из граней куба. Так как в OpenGL по умолчанию устанавливается режим GL_REPEAT, то при работе с кубическими картами для всех карт следует явно выставить GL_CLAMP_TO_EDGE. Для использования кубических текстур их (подобно всем остальным) следует сначала разрешить при помощи команды glEnable ( GL_TEXTURE_CUBEJMAP_ARB ); Важно помнить, что в OpenGL кубические текстуры имеют более высокий приоритет по сравнению с обычными, поэтому если одновременно в одном и том же текстурном блоке разрешить и кубическую, и обычную (например, двумерную) текстуры, то будет выбрана именно кубическая.

Категория: Простейшие расширения

Таги: , ,

Приветствие!

Наш сайт создан для любителей и профессионалов, для тех кому не безинтересна система под названием Linux. На нашем сайте вы найдете статьи от установки до программирования на Linux'e, отзывы о системе, советы и поддержка начинающим пользователям. Для новичком, доступен раздел "Запускаем Linux", в котором рассказывается все от "упаковки", до первого включения системы.

Архивный календарь

Март 2010
Пн Вт Ср Чт Пт Сб Вс
« Фев    
1234567
891011121314
15161718192021
22232425262728
293031  


Статистика