Serious Engine
Serious Engine (рус. “Серьёзный движок”) — игровой движок, разработанный хорватской компанией Croteam и впервые использованный в игре Serious Sam 2001 года выпуска.
Serious Engine | |
---|---|
Тип | Игровой движок (Список) |
Разработчик | Croteam |
Часть серии движков | Serious Engine |
Следующий движок серии | Serious Engine 2 |
Аппаратная платформа |
IBM PC-совместимый компьютер Xbox PlayStation 2 GameCube |
Поддерживаемая ОС |
Windows Linux |
Написан на языке | C++ |
Лицензия | свободная, GNU GPL v2 |
Последняя версия | 1.50 |
Первая игра на движке | Serious Sam: The First Encounter / 2001 |
Последняя игра на движке | Serious Sam Classics: Revolution / 2014 |
croteam.com/technology/ |
Впоследствии компанией Croteam были разработаны более совершенные игровые движки — Serious Engine 2, Serious Engine 3 и Serious Engine 4.
11 марта 2016 года исходный код движка Serious Engine версии 1.10 был официально открыт[1][2] и доступен под лицензией GNU General Public License v.2.[3]
Технические характеристики
Отличительной возможностью движка является хорошая работа с большими открытыми пространствами, а также высокая скорость работы, что много раз отмечали критики в рецензиях на построенные с применением Serious Engine игры[4][5]. Движок был популярен также среди сообщества игроков в Serious Sam, они создавали на нём новые карты и «полновесные» сюжетные модификации.
Первоначально движок был разработан для ПК и поддерживал операционные системы Windows и Linux; с приходом популярности к серии игр Serious Sam, движок был портирован и на другие платформы — игровые приставки Xbox, GameCube и PlayStation 2. Технология находилась в разработке на протяжении трёх лет[6].
Игровой движок поддерживает как множество технологий, которые на те времена практически не использовались в других движках, так и стандартные возможности, активно эксплуатируемые в разработках конкурентных компаний. Некоторые из заявленных на сайте движка возможностей не были использованы ни в одной игре на движке Serious Engine. Список указан согласно официальной вики-энциклопедии[7].
Работа с локациями
Поддерживается обработка сложной архитектуры, что позволяет разработчикам показывать в игре большие здания или объекты со множеством деталей. Быстрая обработка больших открытых и закрытых пространств позволяет создавать локации очень больших размеров, которые будут отображаться без подгрузок, загружаясь единожды перед запуском уровня.
Присутствует возможность автоматического генерирования — движок генерирует одну огромнейшую карту, на которой можно устанавливать объекты или постройки.
Тени — от персонажей или объектов, — могут быть динамические или предрассчитанные. Движок может работать как с динамическими тенями, которые меняются и отбрасываются в режиме реального времени, так и с заранее просчитанными тенями (картами теней).
Многонаправленная гравитация с шестью степенями свободы (англ. Full 6 DOF Physics) — специфическая возможность, которая позволяет создавать несколько «гравитаций» на одном уровне. Может использоваться на многопользовательских уровнях. С помощью этой возможности можно реализовать, например, здание на локации, в котором игрок может передвигаться по стенам, а выходя из здания заработает «обычная» модель гравитации. Возможность используется в Serious Sam: The Second Encounter.
Технология порталов позволяет реализовать на уровнях порталы, которые могут отображать какую-то точку созданной разработчиками локации, а также использоваться для перемещения игрока (но не объектов).
Погода и визуальные эффекты
Реализованы различные погодные эффекты, в числе которых объёмный туман; он может быть динамически перемещаемый, с регулируемым размером, цветом и интенсивностью. Как и в некоторых других движках имеет негативное свойство выделяться на фоне окружающего мира, и со стороны отображаться, как прозрачная белая коробка (однако, пока игрок в «зоне тумана», этого артефакта не видно).
Помимо этого, реализовано изменение цикла день-ночь, которое достигается сменой освещения и оттенков изображения, а также заменой фонового изображения (бэкграунда) неба.
В списке поддерживаемых визуальных эффектов и эффектов частиц есть отражения и вспышки линз (эффект, который показывает следы света и отражения солнечных лучей на экране монитора («виртуальной камеры»), подобно тому, как при съёмке солнца фотоаппаратом от линз отбиваются солнечные лучи. Эффект привыкания глаза к освещению симулирует сетчатку глаза человека и её реакцию на свет (в современных играх такой эффект стал использоваться значительно позднее, например, в играх на движке Source, вместе с HDR). Световые эффекты включают в себя прямой свет, попиксельное освещение полигонов, анимированное освещение, сглаженное освещение, эффект рамки, симуляции огня, плазмы и воды.
Отражающие поверхности (могут быть использованы для создания зеркал или отражений на предметах).
Морфинг объектов (англ. Object Morphing) помогает задать плавную трансформацию одного объекта в другой. Например, персонаж может превратиться из животного в человека или наоборот. В играх серии Serious Sam эффект морфинга используется при превращении одного из противников главного героя — лавового голема. Эта возможность практически не использовалась в компьютерных играх; морфинг реализован в игре Harry Potter and the Prisoner of Azkaban (2004 год) на движке Unreal Engine 2.
Поддерживается процедурное смешивание (англ. Procedural Mixing) и процедурная система частиц (англ. Procedural Particle System) — для каждого объекта можно создать несколько слоев, тем самым реализовав различные переходы и эффекты, такие как трансформация комнаты.
Работа с текстурами
Поддерживаются 32-битные текстуры. Возможно использование анимированных, подвижных текстур.
Рельефное текстурирование — приём, который позволяет изображать рельеф на поверхности различных объектов. Так можно, например, показать выпуклости кирпичной стены, без необходимости прорабатывать каждый кирпичик в виде отдельного объекта. Возможность, редко встречаемая в движках того времени была добавлена в Serious Engine в версии 1.5.
Несколько методов фильтрации текстур: анизотропная фильтрация и трилинейная фильтрация. Движком используется также графический фильтр, повышающий качество изображения за счет придания текстуре дополнительной резкости.
Детальное текстурирование — техника позволяет накладывать несколько текстур на одну модель. При помощи детальных текстур можно сделать так, что когда игрок подходит близко к объекту, на его нормальную текстуру плавно накладывается текстура с деталями (шероховатостями, ржавчиной и т. п.), тем самым объект становится более чётким. Такая возможность была реализована в первой версии Unreal Engine (с игрой Unreal 1998 год), а также в движке GoldSrc (с игрой Counter-Strike: Condition Zero, 2004 год).
Пользовательские фоны (бэкграунды). Возможность, которая использовалась в игровых движках достаточно давно и присутствовала в движках Quake engine и GoldSrc. С помощью этой возможности можно создавать фотореалистичное небо, используя текстуры высокого разрешения.
Другие возможности
Возможности оптимизации: поддерживается LOD для объектов (уровень детализации (англ. Level Of Detail) — алгоритм, который позволяет генерировать до 32 вариантов модели с возрастающей детализацией; таким образом, объекты, которые находятся далеко от игрока становятся менее детализированными, а значит меньше загружают ресурсы компьютера, при приближении к модели её детализация плавно возрастает), «сглаженная анимация» (особенность, которая экономит ресурсы компьютера путём «размытия» объектов и отсечения «лишних» кадров анимации).
Реализация многопользовательской игры посредством локальной сети или интернет-соединения; поддержка разделения экрана.
Звуковой движок может работать с файлами в формате MP3 (используется библиотека Amp11lib), OGG и WAV для звука и музыки, реализованы искажения звука согласно акустическим условиям, трёхмерный звук, динамическая музыка (плавная смена музыки в зависимости от действий игрока).
Многоязыковая поддержка для создания различных локализованных версий.
Средства разработки
Силами разработчиков компании Croteam для работы с движком было создано три программы-редактора. Поклонниками игры также было создано несколько неофициальных утилит, которые можно найти на фан-сайте «Seriously!»[8][9].
- Serious Editor — предназначен для редактирования и создания локаций в реальном времени, интерфейс редактора похож на UnrealEd. Можно опробовать созданную карту непосредственно в окне программы. Редактор поддерживает редактирование в четырёх режимах — Entities, Polygons, Sectors и Vertex. Каждому из режимов соответствует цвет индикатора, который расположен в нижней части экрана. Область вида может быть разделена на одно, два или четыре окна, в которых уровень может быть показан в нескольких ракурсах: сверху, снизу, слева, справа, спереди, сзади и в перспективе.
- Serious Modeller — для создания и редактирования моделей. Поддерживается импорт объектов из 3ds Max и других программ для работы с 3D-графикой.
- Serious SKA Studio — позволяет импортировать из LightWave или 3ds Max модели со скелетной анимацией и сохранять их в формате .SKA.
Последующие разработки
Для компьютерной игры Serious Sam 2 разработчиками из Croteam была создана новая версия движка — Serious Engine 2. В отличие от первой версии, этот движок не использовался в играх сторонних компаний, однако технически содержал в себе множество изменений: разработчики акцентировали внимание на новом физическим движке с тряпичной физикой, новых графических эффектах, как HDR рендеринг, bloom и поддержке пиксельных шейдеров 2.0 (что позволило сделать, например, реалистичную воду, которая отражает мир). Кроме того, количество доступных полигонов на модель было увеличено, а разрешение текстур поднято[10].
Также разработана третья версия движка, Serious Engine 3, использованная в шутерах Serious Sam HD: The First Encounter и Serious Sam HD: The Second Encounter — эти игры являются переработанными версиями первой части Serious Sam и её дополнения The Second Encounter; на её же основе разработана и последующая игра серии — Serious Sam 3: BFE[11][11][12][13].
Игры, использующие Serious Engine
- 2001 — Serious Sam: The First Encounter (Croteam)
- 2002 — Serious Sam: The Second Encounter (Croteam)
- 2002 — Serious Sam: Xbox (Gotham Games)
- 2002 — Carnivores: Cityscape (Sunstorm Interactive)
- 2002 — Deer Hunter 2003 (Sunstorm Interactive)
- 2003 — Bird Hunter 2003 (Sunstorm Interactive)
- 2004 — Alpha Black Zero: Intrepid Protocol (Khaeon)
- 2004 — Nitro Family (Delphieye Enterainment)
- 2005 — EuroCops (Crazy Foot Games)
- 2005 — Rakion (Softnyx)
- 2006 — Last Chaos (Barunson Games)
- 2019 — Serious Sam Classics: Revolution (Alligator Pit)
- Отменена — Negative Space (Khaeon)
- Отменена — Cleric (Plutonium Games)
- Отменена — Mi'Jarin Chronicles: The Path to War (Mystical Development)
См. также
- Serious Engine 2 — вторая версия игрового движка от Croteam
- Serious Engine 3 — третья версия движка
- Serious Engine 4 — четвертая версия движка
- Unreal Engine 1 — игровой движок, конкурировавший с Serious Engine 1
Примечания
- Christian Nutt. Serious Sam dev Croteam releases classic engine source code (англ.). Gamasutra (11 марта 2016). Дата обращения: 13 марта 2016. Архивировано 13 марта 2016 года.
- t. Serious Sam Developer Croteam Releases Source Code for Serious Engine 1 (англ.). [MXDWN's (11 марта 2016). Дата обращения: 13 марта 2016.
- Croteam-official/Serious-Engine . GitHub. Дата обращения: 11 марта 2016.
- Александр Юмашев. Serious Sam: The Second Encounter . Absolute Games (2 февраля 2002). — рецензия. Дата обращения: 26 июля 2011.
- Александр Юмашев. Serious Sam: The Second Encounter (недоступная ссылка). Absolute Games (5 января 2002). — предварительный обзор. Дата обращения: 26 июля 2011. Архивировано 29 мая 2009 года.
- Engine Overview (1.x) (англ.) (недоступная ссылка). официальный сайт Serious Engine (2008). — копия страницы в Архиве Интернета. Дата обращения: 26 июля 2011. Архивировано 11 января 2008 года.
- Engine Features (1.x) (недоступная ссылка). официальный сайт Serious Engine (25 июня 2009 года). Дата обращения: 26 июня 2009. Архивировано 27 апреля 2007 года.
- Serious Sam: The First Encounter — Tools (англ.) (недоступная ссылка). Seriously!. — программы для работы с движком. Дата обращения: 4 октября 2010. Архивировано 19 марта 2012 года.
- Serious Sam: The Second Encounter — Tools (англ.) (недоступная ссылка). Seriously!. — программы для работы с движком. Дата обращения: 4 октября 2010. Архивировано 19 марта 2012 года.
- Serious Engine 2 (англ.). Архив Интернета. — описание функций движка на официальном сайте. Дата обращения: 4 октября 2010.
- John Callaham. Serious Sam: The First Encounter remake coming to the PC (недоступная ссылка). bigdownload.com (25 июня 2009 года). Дата обращения: 26 июня 2009. Архивировано 19 марта 2012 года.
- Louva-Deus. Serious Sam HD Announced for PC and XBLA for Xbox 360 Platforms (недоступная ссылка). Seriously! (25 июля 2009). Дата обращения: 26 июня 2009. Архивировано 19 марта 2012 года.
- Константин 'Бобик' Фомин. Новости AG. (Не)серьезный ремейк (недоступная ссылка). Absolute Games (25 июня 2009 года). Дата обращения: 26 июня 2009. Архивировано 26 июня 2009 года.
Ссылки
- Croteam (англ.) (недоступная ссылка). — официальный сайт компании. Дата обращения: 5 ноябрь 2010. Архивировано 19 марта 2012 года.
- Serious Engine (англ.) (недоступная ссылка). Croteam. — официальный сайт серии движков. Дата обращения: 5 ноябрь 2010. Архивировано 23 июля 2002 года.
- Serious Engine (англ.) (недоступная ссылка). MobyGames. Дата обращения: 4 октября 2010. Архивировано 19 марта 2012 года.
- Загрузка исходных кодов
- Croteam-official/Serious-Engine . GitHub. Дата обращения: 11 марта 2016.