Расширения ARB_texture_border_clamp и EXT_texture_edge_clamp

При текстурировании OpenGL приводит каждую компоненту текстурных координат вершины в диапазон [0, 1]. Способ исполнения задается функцией giTexParameteri, например, следующий фрагмент кода задает в качестве режима приведения повторение.// set texture to repeat modegiTexParameteri ( GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT ); giTexParameteri ( GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL REPEAT );
Однако когда такое усечение происходит одновременно с пирамидальным фильтрованием (mipmapping), то может возникнуть следующая проблема. Если значение текстурных координат лежит вне единичного квадрата (единичного отрезка в случае одномерной текстуры), то на полученное значение текстуры окажут влияние цвета текселов не только с границы текстуры, но и из ее внутренних точек.
Если значение текстурных координат намеренно задано вне единичного квадрата, то в ряде случаев оказывается крайне нежелательным, чтобы на полученное при текстурировании значение оказывали влияние внутренние точки текстуры. Возможность избежать этого предоставляет расширение ARB_texture_border_clamp. Если в качестве режима отсечения текстурных координат задать вводимый этим расширением режим GL_CLAMP_TO_BORDER_ARB, ТО ДЛЯ текстурных координат, сильно выходящих за единичный квадрат, при пирамидальном фильтровании будут использоваться только граничные текселы.

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

Таги: , ,

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

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

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

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


Статистика