Мегатекстура

Мегатексту́ра (англ. 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.

Описание технологии

[править | править код]
Белые и цветные квадраты — тексели; тонкими линиями обозначены границы отдельных текстур. Круги — области высокой (средней, низкой) детализации. Загружено по 9 квадратов каждого уровня детализации.

Технология «Мегатекстура» относится к методике распределения текстур. Весь ландшафт игрового уровня покрывается одной большой текстурой вместо множества мелких текстур.

Характеристики и особенности технологии:

  • Мегатекстура сохранена на жёстком диске и подкачивается при необходимости в оперативную память, позволяя создавать большое количество деталей и разновидностей ландшафта и при этом использует сравнительно мало оперативной памяти.
  • Существует несколько версий мегатекстуры в разных уровнях детализации; в каждом уровне она разбита на квадраты одинакового (в пикселях) размера. Например, мегатекстура 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]

Примечания

[править | править код]
  1. «Id Tech 5 stage demo» Архивная копия от 15 октября 2007 на Wayback Machine (англ.)