Stage3D / AGAL from scratch. Part VIII – Texture, please ! / Изучаем Stage3D / AGAL с нуля. Часть VIII – Пожалуйста, текстуры !: MIP-текстурирование

Английский оригинал Перевод на русский

Сожалеем, но текст оригинала доступен только зарегистрированным пользователям.

Как я не пытался, но написать что такое мипмаппинг своим языком так, чтобы вы поняли, у меня не получилось, поэтому позвольте мне процитировать Википедию:

В компьютерной 3D графике, мипмапами (или Мип-картами) называют предрассчитанный, оптимизированный набор изображений связанных с одной текстурой и предназначенный для увеличения скорости рендеринга и улучшения качества изображения.

При отключенном мипмапинге видеокарте придётся выбирать, какой тексель из большой текстуры будет использован для расчёта цвета точки. Этот выбор может меняться при изменении ракурса камеры, что приведёт к мерцанию объектов вдали.

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

redefy 19.08.12 в 15:49

0

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

redefy 19.08.12 в 15:58

0

Первая проблема, возникающая при этом, заключается в том, что если текстура большая, то этот процесс займет некоторое время.

redefy 19.08.12 в 16:00

0

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

redefy 19.08.12 в 16:03

0

Для решения этих проблем, в V-RAM загружается серия изображений, каждое из которых в два раза меньше предыдущего.

redefy 19.08.12 в 16:05

0

GPU будет автоматически выбирать между двумя изображениями в зависимости от текущего расстояния до объекта.

redefy 19.08.12 в 16:07

0

Это хороший прием оптимизации, так как каждая выборка будет занимать меньше времени, но есть и недостаток, при использовании этого приема, потребуется больше V-RAM для хранения каждого изображения.

redefy 19.08.12 в 16:10

0

При использовании мипмапов, возникает еще один артефакт, особенно часто его можно было наблюдать в старых видео играх, он заключает в том, что каждый "слой" текстуры не смешивается с другими, из-за чего вы будете вынуждены наблюдать эффект продемонстрированный здесь.

redefy 19.08.12 в 16:16

0

Но есть хорошие новости, сейчас применяются различные технологии фильтрации текстур, которые позволяют решать проблему описанную выше.

redefy 19.08.12 в 16:18

0

Ниже, в следующем демо, вы имеете возможность выключать и включать мипмапинг, а также сможете добавить случайный цвет к каждому мип-уровню, для того чтобы вы могли видеть где какая текстура используется.

redefy 19.08.12 в 16:22

0

Ниже, в следующем демо, вы имеете возможность выключать и включать мипмапинг, а также сможете добавить случайный цвет к каждому мип-уровню, для того чтобы вы могли видеть где какая текстура используется.

redefy 19.08.12 в 16:22

0
Минутку...