Infinitation Studio - вселенные, используемые в работах
Advertisement
Progress Engine
Игровой движок
Разработчик Infinitation Studio
Дата анонса 2006 год
Аппаратная платформа MS Windows ПК
Поддерживаемая ОС MS Windows
Написан на языках Visual Basic, C, C++
Последняя версия lifeGen Engine v.1.0 (Build 2512) / Сентябрь 2010

История

955727932

Сначала ничего не было, кроме идеи. Не было даже слов Progress Engine. А в далеком 2005-ом году был собран небольшой, но очень амбициозный коллектив GGCG. И тогда родилась библиотека игровой логики, которой было дано имя God's Engine. В ней функционала было меньше, чем совсем ничего, но так как амбиции лились через край, то хотелось встроить туда все-все-все без исключения, и попутно "убить" своей мощью кучу коммерческих движков.

Дальше библиотека понемногу развивалась и меняла названия. Сначала она была God's Engine, но это слишком пафосное название было отменено, и движок стал называться Queezor Engine. Стоит отдельно упомянуть, что рендер графики к тому моменту у "движка" отсутствовал, и сам по себе движок предполагалось использовать в связке с открытыми библиотеками рендера. Но так как код превращался в нечитаемый ночной кошмар, а языком программирования тогда был чуть ли не бейсик в связке с паскалем, то разработка библиотеки была прекращена.

Дальше движок уже переродился под названием Planetary Engine. Это была модификация одного из уже существовавших к тому моменту игровых движков, распространявшихся свободно. Вещь получалась весьма неплохая, несмотря на весьма солидный возраст оригинального движка.

PEGLogo 1280x1024

Тогда весьма не на пользу движку были чрезмерные амбиции разработчика, обещавшего невообразимое качество, что было невозможно в тот момент. Так как движок требовал хотя бы для частичного соответстветствия заявлениям, полной переработки, то вскоре от оригинала в нем ничего не осталось. Тогда движок уже носил название "Progress Engine" плюс разные буквы греческого алфавита, или циферка.

Далее была еще нескончаемая туча сборок движка, носивших различные названия, но суть всегда оставалась одна, и движок был один. В истории движка было достаточно моментов, когда, набрав определенный объем исходного кода, разработка одной версии движка останавливалась и начиналась разработка новой версии. В основном, это было связано с желанием разработчиков внести в код новые фичи, способные сделать разработку удобнее, поднять производительность, или просто перейти на новый язык программирования.

Сегодня самая последняя версия движка носит название rigidLight Engine, ее разработка не афишируется. Кроме того, существует отдельная разработка Progress Engine 200, которая на самом деле является тем же самым rl Engine, и предназначается для широкого распространения. В настояшее время движок написан на языке программирования С++, и не основывается ни на одном из прежде существовавших игровых движков.

Спорные моменты

В свое время, Infinitation Studio производила публикацию части исходных кодов движка, и в том числе засветился код математической библиотеки с невероятными десятимерными векторами и прочими чудесами в области математики. Помимо этого, IS неоднократно заявляла о внедрении в движок устаревших технологий, либо о том, что Progress Engine переписывается на основе какого-либо морально устаревшего движка.

На базе Progress Engine на самом деле не было выпущено ни одной игры потому, что в то время велась очень серьезная работа над движком. В основу был положен движок Genesis 3D, уже на тот момент времени морально устаревший. Задача IS состояла в том, чтобы собрать на его основе мощный современный движок. Планов у коллектива на данный движок было громадьё, но в конце-концов, разработать движок на базе Genesis 3D у команды в срок не вышло, зато полученных знаний и опыта хватило на то, чтобы взяться за разработку нового движка с нуля.

Игры на движке

На движке разрабатывались игры такие как X-War, бывший прежде модификацией для игры Half-Life 2, ИМПЕРАТОР - Сравнение Сил, РАСКОЛ, и прочие.

65c098961dfe

Старый просмотрщик моделей с открытой моделью имперского пехотинца

Скриншоты

В ходе работ с использованием данного движка были отсняты видео а так же скриншоты. В их числе были скриншоты с инструментария. Наиболее ранние снимки экрана могут показать незначительно измененный инструментарий движка Genesis 3D.

Анонсированные возможности

Неоднократно заявлялось, что движок будет поддерживать большой спектр машин и сможет работать как на машинах под DOS, так и под Windows Vista, показывая, при этом, вполне адекватную картину. Делались и такие анонсы, согласно которым движок должен был поддерживать (в определенных редакциях) технологию трассировки лучей в реальном времени, что позволило бы рисовать реалистичное освещение и тени, дополняя картинку честными отражениями.

Мультирендерер

В действительности: взятый за основу Genesis 3D позволил сделать не так много. Самым слабым графическим API, которое было задействовано в разработке системы рендеринга, оказался DirectX 8.1. Все прочие библиотеки рендеринга требовали разрабатывать под них контент с совершенно другим уровнем качества, и фактически, разрабатывать несколько разных игр вместо одной.

Трассировка лучей в реальном времени

Система трассировки лучей предъявляла иные требования - с одной стороны, оптимизации позволили перенести значительную часть расчетов на видеокарту и многое другое; но в конечном счете, всего этого было недостаточно для разработки полноценной игры на основе данной технологии.

Представление удаленных объектов спрайтами

Кроме того, делались заявления о том, что вдали некоторые модели будут представлены вместо модели спрайтом. Подобным образом можно было поступить с персонажами, элементами декораций, и пр. Такая технология действительно разрабатывалась и была очень востребована в определенных играх студии, но так использована нигде и не была.

Физика в движке

Было сделано несколько анонсов, согласно которым движок Progress должен был использовать библиотеку физических взаимодействий nVidia PhysX. Однако у данной библиотеки обнаружился ряд недостатков (в том числе отсутствие цилиндрических примитивов для более реалистичной симуляции колёс у транспортных средств), и предпочтение было отдано библиотеке Bullet.

Библиотека "Алхимия"

Существовал анонс, согласно которому движок должен был содержать в себе библиотеку реалистичной симуляции химических процессов и взаимодействий. Библиотека, получившая название "Алхимия" действительно разрабатывалась для движка, однако впоследствии, как одна из наиболее перспективных разработок, перешла в движок rigidLight.

Продвинутая математическая библиотека

Было сказано, что математика в движке будет работать очень быстро и функциональность математической библиотеки будет на современном уровне. Отсюда вытекла и публикация кода с десятимерным вектором. Впоследствии математическая библиотека неоднократно переписывалась, и идея такой "продвинутой" математической библиотеки ушла.

Тематические ссылки

Advertisement