Мегатекстура
Мегатексту́ра (англ. MegaTexture) — это графическая технология, разработанная Джоном Кармаком, техническим директором id Software. Его технология повторяет технологию Clipmapping (ClipTexture), которая разработана компанией SGI и уже достаточно давно применяется для текстурирования больших ландшафтов. Отличие мегатекстуры от Clipmap состоит в том, что мегатекстура содержит маску для добавочных текстур повышенной детализации и информацию о типе материала (трава, камень и т. п.). Технология «Мегатекстура» реализована в последней версии движка id Tech 4 и id Tech 5, используется в играх Enemy Territory: Quake Wars от Splash Damage, Rage от Id Software и в Wolfenstein: The New Order. Независимыми разработчиками были созданы модификации, позволяющие использовать технологию мегатекстуры в ранее вышедших играх, например, Doom 3.
Описание технологии
Технология «Мегатекстура» относится к методике распределения текстур. Весь ландшафт игрового уровня покрывается одной большой текстурой вместо множества мелких текстур.
- Характеристики и особенности технологии
- Мегатекстура сохранена на жёстком диске и подкачивается при необходимости в оперативную память, позволяя создавать большое количество деталей и разновидностей ландшафта и при этом использует сравнительно мало оперативной памяти.
- Существует несколько версий мегатекстуры в разных уровнях детализации; в каждом уровне она разбита на квадраты одинакового (в пикселях) размера. Например, мегатекстура 32768×32768 пикселей, покрывающая участок в 640×640 метров, в максимальной (нулевой) детализации разбивается на 32×32 квадрата размером 1024×1024 пикселя (20×20 м). Первый уровень детализации состоит из 16×16 квадратов того же размера (1024×1024 px), но вдвое меньшего пространственного разрешения (то есть, размер каждого квадрата — 40×40 метров), второй — из 8×8 квадратов по 80 м каждый, и т. д.
- Ближайшие к камере пиксели рендерятся с текстурой максимального качества, содержащей только небольшой участок мегатекстуры.
- Следующие пиксели рендерятся с текстурой меньшего качества, и маленьким разрешением.
- Самые дальние пиксели рендерятся с основной текстурой в уменьшенном разрешении.
- В игре Enemy Territory: Quake Wars разрешение мегатекстуры составляет 32768×32768 пикселей.
- В следующем движке компании id Software — id Tech 5 — используется улучшенная версия мегатекстуры разрешением 128000×128000 пикселей.[1]
Примечания
- «Id Tech 5 stage demo» Архивная копия от 15 октября 2007 на Wayback Machine (англ.)
Ссылки
- Евгений Головин. Использование мегатекстур (megatexture, clipmaps). 2. GameDev.ru (8 ноября 2007). Дата обращения: 12 июля 2009.
- Официальный сайт id Software (англ.)
- Официальный сайт Splash Damage (англ.)
- John Carmack on MegaTexture (англ.)
- Arnout van Meer on Quake Wars (англ.)
- MegaTerrain (англ.)
- OpenGL Performer Programmer’s Guide — Chapter 15. ClipTextures (англ.)