Light-industry-up.ru

Экосистема промышленности

Wolfenstein 3D engine

07-07-2023

Wolfenstein 3D engine
Игровой движок (Список)
Разработчик id Software
Ключевой программист Джон Кармак
Часть серии движков id Tech
Следующий движок серии Doom engine
Аппаратная платформа IBM PC-совместимые компьютеры
Поддерживаемая ОС DOS
Написан на языках C, x86-совместимый язык ассемблера
Лицензия свободная, GNU GPL
Первая игра на движке Wolfenstein 3D / 5 мая 1992 года
Последняя игра на движке Rise of the Triad / 21 декабря 1994 года

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 на этом движке были выпущены следующие игры:

Интересные факты

Ссылки

  • Исходники движка и инструкции по компиляции (англ.)
  • Обзор игровых движков iD Software


Wolfenstein 3D engine.

© 2014–2023 light-industry-up.ru, Россия, Краснодар, ул. Листопадная 53, +7 (861) 501-67-06