Interested Article - Wolfenstein 3D engine

Игрока атакуют: слева — немецкая овчарка, справа и впереди — простой солдат с пистолетом

Wolfenstein 3D engine псевдотрёхмерный игровой движок , разработанный для игры Wolfenstein 3D , вышедшей 5 мая 1992 года. Движок разрабатывался преимущественно Джоном Кармаком , главным программистом компании id Software .

С 1995 года исходный код движка доступен по лицензии GNU GPL , вместе со всей игрой Wolfenstein 3D .

Технические характеристики

Движок Wolfenstein 3D engine обладает не самыми революционными для своего времени возможностями, но является специально оптимизированным под более низкие системные требования компьютера.
Он реализует VGA графику ( рейтранслитинговая ), звук ( WAV и IMF ), физику и управление.
Написан на Си и ассемблере x86 .
Особенности:

Ограничения:

  • Большинство ограничений связаны с тем, что игровая карта размещалась на двухмерной сетке, то есть фактически была двухмерной.
  • Невозможно движение по вертикали (в третьем измерении).
  • Не поддерживается различие геометрической высоты.
  • Не поддерживаются различия в освещенности.
  • Стены могут быть ориентированы только как «север-юг» или «запад-восток».
  • Невозможны наклонные поверхности.

Описание работы

Для отрисовки сцен используется метод Ray casting

Мир в Wolfenstein 3D построен на квадратной сетке из стен однородной высоты и ровных сплошных полов и потолков. Для отрисовки игрового уровня из области наблюдения «выпускается» луч, который проходит через каждый столбец пикселей на экране. Далее алгоритм проверяет, не пересёк ли луч стену, и если пересёк, то в соответствии с этим выбирает и масштабирует текстуру стены согласно тому, где на уровне луч «столкнулся» со стеной и насколько далеко он распространился до этого. Далее создается одномерный буфер, в котором располагаются масштабированные спрайты, которые изображают врагов, бонусы и предметы.

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

Игры, использующие движок Wolfenstein 3D

После Wolfenstein 3D на этом движке были выпущены следующие игры:

Ссылки

Источник —

Same as Wolfenstein 3D engine