3D МОДЕЛИ
Среда, 01.05.2024, 17:40
Меню сайта
Категории каталога
Разное [0]
3D модели [4]
Мини-чат
300
Главная » Статьи » 3D модели

Build engine
Build engine — это игровой движок шутера от первого лица созданный Кеном Сильверманом для 3D Realms. Как и в игре Doom, движок Build engine проецирует игровой мир на двухмерную сетку из замкнутых фигур на плоскости, называемых секторами, и использует простейшие плоские объекты, называемые спрайты для населения геометрического мира объектами.

Тип Игровой движок
Разработчик Ken Silverman
Лицензия ОС DOS
Сайт http://advsys.net/ken/build.htm

Build engine относится к классу так называемых «2.5-мерных движков», потому как в основе игрового мира лежит плоскость с добавленной компонентой высоты. Каждый сектор может иметь разную высоту пола и потолка, а также разный наклон пола и потолка. В результате рендеринга мир выглядит трехмерным. Обсчёт перспективы основывается только на горизонтальном расстоянии (примечательный факт, что все вершины строго вертикальны вне зависимости от угла зрения). Это вызывает значительные размазывание изображения и искажения перспективы при взгляде вверх или вниз на большие углы в большинстве игр на движке Build.

Технические характеристика
Сектора
Сектора — основная составляющая геометрии уровня. С секторами можно работать в реальном времени. Их параметры (высоты, форма, углы наклона) не требуют пересчета при изменении. Это позволяет делать окружение в игре более интерактивным, например разрушаемым (как в Blood).

Разработчики использовали зарезервированные спрайты (секторэффекторы), которым присваивались специальные верхние (hi-tags) и нижние (lo-tags) теги (числа с определенным смыслом), которые позволяли делать мир более динамичным (например двери, взрывающиеся бочки и т. п.). Такие же теги могут быть заданы полу и потолку сектора для придания особых свойств. Например игрок, проходящий по полу со специальными тегами, проваливался вниз и выпадал из другого потолка со специальными тегами. На практике это применялось для создания водоемов. Сектору могут быть присвоены теги, которые превращают его в дверь или лифт. Сектора могут перекрывать друг друга, чтобы один не был виден из-за другого (если в такой ситуации видно сразу два сектора, то с сильнейшими искажениями). Это позволяло создавать, например, вентиляционные шахты, находящиеся над помещениями (правда это значительно затрудняло дальнейшую работу с этой частью уровня, так как почти все время разработчик проводит в двухмерном режиме). Также это позволяет создавать невозможные с точки зрения физики, миры (напр. система помещений в здании, которая больше самого здания). Все эти эффекты делали мир похожим на трехмерный, пока не появился движок Quake.

Воксели
Поздние версии движка позволяли заменять изображения в игре на трехмерные объекты, сделанные из вокселей. Эта возможность появилась слишком поздно для того, чтобы использовать ее в Duke Nukem 3D, но была использована в других играх. Blood использует воксели для оружия, патронов, улучшений, и различных украшений (таких как надгробия на уровне Cradle to Grave). В Shadow Warrior эти технологии используются еще более умело, теперь воксели можно поместить на стены (все кнопки в игре это трехмерные объекты) и даже примитивный режим трехмерности врагов, который можно включить или выключить клавишей F5, заменяющий спрайты врагов на трехмерные объекты. Правда в Shadow Warrior этот режим не был отлажен и имеет много багов. Несколько лет Кен работал над движком Voxlap, берущим за основу воксельную технологию.

Комната над комнатой
Некоторые игры на движке Build engine использовали трюк с объединением пола и потолка у двух секторов. Создание таких конструкций во время редактирования уровня было затруднено, поэтому часто сектора перемещались во время загрузки уровня (что упрощало расчеты, выполняемые движком для отрисовки). Технология комната-над-комнатой применялась в Shadow Warrior (смещение секторов во время загрузки карты) и Blood (без смещения). Сама технология не была заложена в движок, до нее додумались создатели уровней.

Дальнейшее развитие
20 июня 2000 года Кен Сильверман открыл исходные коды движка Build Engine.

Версия 2.0 (первый и единственный официальный релиз) EDuke от Мэт Саетлера (проект для улучшения Duke Nukem 3D) был отослан в 3D Realms (исходники Duke Nukem 3D и EDuke были по прежнему в закрытом доступе). Работая с бета-версией 2.1, Мэт пытался встроить исходники Build в исходники duke, но проект был закрыт прежде чем появились отлаженные публичные версии. Несколько команд, занимавшихся тотальной конверсией игр на Build, решили работать прямо с исходниками Build engine Кена, а не исходниками Duke. Позже, в результате работы появился редактор mapster. Долгое время портирование движка Build на многозадачные операционные системы было затруднено из-за необходимости очень больших участков памяти компьютера, которых не было в многозадачных ОС. Проблема решалась подключением виртуальной памяти.

Исходные коды Duke Nukem 3D
1 апреля 2003 года 3D Realms опубликовали исходные коды движка Duke Nukem 3D несмотря на то, что на протяжении длительного времени утверждали что этого никогда не случится. После этого очень скоро появились порты Icculus и JonoF. Стало возможно без проблем играть в Duke Nukem 3D на GNU/Linux, Windows NT и других платформах, и интерес к портам усилился.

Порт icculus.org
Райн Горден (icculus) с посторонней помощью создал первый порт движка с использованием SDL. Изначально это был порт для GNU/Linux, после для Cygwin и еще позднее для чистого Win32 (при сборке использовался компилятор Watcom C++, который использовался и для оригинальной DOS сборки (с точностью до того, что для Windows использовался Watcom C++, а Build написан на обычном C). Шли слухи о портировании EDuke на Windows, но ничего не произошло.

Порт JonoF
Второй порт на Windows и позднее, на GNU/Linux от Джонатана Фоулера (JonoF). В отличии от icculus порта, этот порт использует DirectDraw вместо SDL на Windows и работает значительно быстрее. Долгое время движок не поддерживал мультиплеер, потом появилась поддержка мультиплеера только для двух игроков.

Система Polymost (Полимост)
Автор движка взялся за задачку обновления Build engine до полноценного трехмерного движка. В примечаниях к релизу JFDuke3D, Сильверман пишет:
Когда 3D Realms опубликовали исходные коды Duke Nukem 3D, я думал кто-нибудь сделает OpenGL или Direct3D порт. Через несколько месяцев я понял, что никто не работает над использованием настоящего аппаратного ускорения в Build, люди просто говорят что это невозможно. Позже я осознал, что единственный способ чего-либо добиться, это сделать все самому.
Система отрисовки полимост использует OpenGL для аппаратного 3D ускорения. Также введена технология хайтайл (hightile), позволяющая заменять стандартные игровые ресурсы более качественными в различных форматах.

Полимост был использован в JFBuild от Джонатана Флауера, JFDuke3D, JFSW, и других портов основанных на этой кодовой базе.

Другие порты
Исходные коды EDuke 2.0 были опубликованы. Это позволило добавить к EDuke возможности порта JonoF и движка Build engine 2.1, вскоре появился EDuke32, но на сегодняшний день в разработке находится только EDuke.

Исходник последней личной бета-версии Eduke 2.1 (которая никогда не была доведена до релиза) был также опубликован после исходных кодов EDuke 2.0. Также появился порт, основанный на ICCULUS, имеющий кодовое название wineduke, разработка которого на сегодняшний день не ведется.

Eduke содержал элементы исходных кодов Nam и WW2 GI что возможно упростило разработку. Также был была попытка воссоздать Blood на движке DarkPlaces и назвать Transfusion, но на 2006 этот порт находится еще на стадии ранней разработки.

Исходные коды Shadow Warrior были опубликованы первого апреля 2005 года и JonoF опубликовал порт на игру второго апреля 2005 года. Правда, он утверждает что имел доступ к исходным кодам Shadow Warrior за неделю до их публикации. Ихсодные коды Witchaven, Witchaven II, Tekwar и Corridor 8 были также опубликованы. Правда под вопросом находится легальность их публикации.

Список игр на движке Build engine
Игры, написанные на первичном Build engine.
  • Blood (1997)
  • Duke Nukem 3D (1996)
  • PowerSlave (Exhumed в Европе) (1996)
  • Shadow Warrior (1997)
  • William Shatner's TekWar (1995)
  • Witchaven (1995)
  • Witchaven II: Blood Vengeance (1996)
Игры, написанные на кодах Duke Nukem 3D
  • Extreme Paintbrawl (1998)
  • NAM (1998)
  • Redneck Deer Huntin' (1997)
  • Redneck Rampage (1997)
  • Redneck Rampage Rides Again (1998)
  • WW2 GI (1999)
Игры, которые не были выпущены
  • Legend of the Seven Paladins (закончена, но никогда не издавалась, так как использовала движок Build engine не легально)
  • Fate (существует только демо)
  • Corridor 8: Galactic Wars (доступны исходные коды)
Ссылки
Официальный сайт движка
Категория: 3D модели | Добавил: IGOR90 (10.02.2008)
Просмотров: 2261 | Комментарии: 1 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа
Поиск
Друзья сайта
Статистика

Онлайн всего: 1
Гостей: 1
Своих: 0
Copyright MyCorp © 2024