Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Трехмерные миры в WEB форматы.docx
Скачиваний:
6
Добавлен:
19.11.2018
Размер:
289.67 Кб
Скачать

Фильтр сжатия

Фильтер сжатия (minFilter) определяет как накладывать текстуру, если поверхность содержит меньше пикселей чем текстура(то есть текстуру нужно сжать или обрезать чтобы наложить). Этот параметр принимает следующие значения minFilter:

Значение

Описание

POINT

Использовать ближайший пиксель

LINEAR

Выполнение линейной интерполяции между соседними пикселями и использование получившегося результата.

ANISOTROPIC

Растягивание текстуры в соответствии с ориентацией экранного пространства. (может быть не пропорциональна в различных направлениях). Рассмотрена подробнее ниже.

Если значение minFilter установлено как POINT или LINEAR, a mipmap фильтр (mipFilter) может быть применен для контроля интерполяции значений атрибутов текстур. Если mipFilter установлен в NONE, он игнорируется.

Mipmap фильтр

Создание уменьшенных версий текстуры более сложная задача, нежели их увеличение. Необходимо учитывать многие детали, например, избегать резких перепадов цвета изображения из-за вырезанных пикселей. Mipmapping представляет собой процесс создания  уменьшенных текстур, для замены ими полноразмерных. Обычно в начале берется оригинальная полноразмерная текстура, затем создается новая в половину от размера первой, и этот процесс уменьшения вдвое продолжается пока текстура не станет нужного размера или уменьшится до одного пикселя. Когда необходимо использовать фильтр сжатия, уровень mipmap определяется следующими значениями mipFilter:

Значение

Описание

NONE

Не использовать mipmap

POINT

Использовать уровень mipmap, который ближе всех подходит к размеру отображаемого треугольника. Внутри уровня, фильтр назначается согласно значению minFilter.

LINEAR

Запуск двух уровней mipmap, наиболее близких по размеру к размеру отображаемого треугольника. На каждом уровне используется фильтрminFilter. Затем значения этих уровней интерполируются для окончательного получения цвета.

Фильтр растяжения

Фильтр magnification (magFilter) определяет как накладывать текстуру на поверхность, содержащую больше пикселей чем текстура.(то есть текстуру нужно растягивать до нужных размеров). Качество текстуры при растяжении страдает, она получается размытой. Значения параметра magFilter:

Значение

Описание

POINT

Использовать ближайший пиксель.

LINEAR

Выполнение линейной интерполяции между соседними пикселями и использование результата.

Режим border

Когда режим адресации установлен в BORDER, цвет borderColor используется для всех пикселей выходящих за рамки диапазона от 0.0 до 1.0 текстурных координат. Верхняя правая текстура в примере использует этот метод с красным цветом.

Анизотропная фильтрация

Когда значение minFilter установлено в ANISOTROPIC, параметр maxAnisotropyопределяет угол анизотропии. Анизотропная фильтрация учитывает расстояние от пикселя текстуры до точки наблюдения, а также угол, на котором текстура в настоящее время рассматривается.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]