Программирование игр
/ GameDev.ru / Программирование / Термины / Мипмап (MipMap) и Мипмаппинг (MipMapping)

Мипмап (MipMap) и Мипмаппинг (MipMapping)

Мипмапы (MipMaps) или Мип-карты  — предрассчитанный, оптимизированный набор изображений связанных с одной текстурой и предназначенный для увеличения скорости рендеринга и улучшения качества изображения.

Каждое следующее изображение в наборе вдвое меньше предыдущего. То есть самое первое имеет размер равный размеру текстуры, второе вдвое меньший, третье — вчетверо и т.д. до размера 1х1 тексель.

Изображение

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

Предположим, что на модель натянута текстура размером 1024х1024. Модель стоит далеко от камеры и геометрические размеры на экране у нее малы (скажем 3 пикселя)

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

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

При применении Трилинейной Фильтрации или Билинейной Фильтрации с мипмапингом можно получить более размытые текстуры на поверхностях вдали или под углом. Для улучшения качества желательно применять Анизотропную Фильтрацию.

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

Генерацию мип-уровней можно сделать несколькими способами:

    Самое простое, это указать видеокарте сгенерировать мип-уровни, но качество не будет очень хорошим, так как для генерации, скорее всего, будет использоваться простой Box фильтр.

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

    Ещё один вариант требует намного больше труда, чем предыдущие два. Он заключается в рисовании всех мип-уровней вручную. В зависимости от опыта художника качество может измениться в ту или иную сторону.

Что такое Мипмап (MipMap) и Мипмаппинг (MipMapping)?

21 апреля 2007

Категории: текстурирование, фильтрация

Комментировать |

Права на документ принадлежат автору, указывайте ссылку при цитировании
Последнее обновление: 19 июня 2009

2001—2010 © GameDev.ru — Разработка игр