Игровые движки S.T.A.L.K.E.R.

Игровой движок — это базовое программное обеспечение компьютерной игры, состоящее из ряда алгоритмов.

Абсолютно каждая игра основана в первую очередь на движке, без него игра не запустится и будет отличной только при наличии качественной базы.

История разработки движка X-Ray восходит к 1998 году, когда два неопытных программиста из GSC Game World, Олесь Шишковцов и Александр Максимчук, объединились для совместной работы над собственным 3D движком.

К 2000 году на движке была выпущена демо-версия игры Sea Battle. С этого момента долгосрочное развитие S.T.A.L.K.E.R.

Проанализировав интервью с одним из ведущих программистов, который участвовал в создании искусственного интеллекта / моделирования в игре, можно выделить две характеристики движка, которые были задуманы и находились в стадии реализации, но не достигли релиза Shadows of Chernobyl:

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

Сталкер (он же NPC) покинул лагерь и направился в другую часть места, где в то время, например, происходила перестрелка между одиночками и бандитами.

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

Это сообщение было отображено на экране игрока, и игрок смог попасть в эту область. Когда он прибыл туда, он действительно мог видеть того же преследователя, который отправил сообщение, и других одиноких и бандитов, сражающихся.

Вторая характеристика — продуманный искусственный интеллект. По словам Дмитрия, это было запланировано: возьмем для примера двух сталкеров.

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

Он должен был подойти, взять нож, а затем подойти к врагу и убить его там.

Идея блестящая, но эта функция так и не была реализована и никогда не появлялась в игре.

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

«Но еще не все… До релиза осталось несколько месяцев, и разработчики должны научить искусственный интеллект многим вещам, например, действовать вместе».

Было слишком много идей и обещаний, а разработчики просто забыли о мелочах. Прежде всего, я говорю о неигровых персонажах, стоящих в коридоре и не позволяющих игроку пройти.

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

Итак, вот функции, которые у движка 1.0 были на выходе:

  • Звуковой сигнал для конкретного местоположения зависит от окружающей среды.
  • Поддерживает кодирование 5.1 и Dolby Digital, поддержку EAX, все, кроме EAX (объемный звук — работает в игре), поддерживает многопользовательские игры до 32 игроков по локальной сети или через Интернет.
  • Поддержка создания дополнительных типов игр, простая и удобная архитектура клиент / сервер, дополнительный дневной / ночной велосипед для многопользовательского режима, использование существующих 3D-приложений (3D Max, Maya, LightWave)

Ни один дизайнер уровня BSP не может создать захватывающую и сложную геометрию, но на самом деле он может создавать мыльные текстуры и простую геометрию. Полигональные коллизии, практичные и интуитивно понятные инструменты редактирования.

Быстрая компиляция и скорость выполнения, ИИ можно контролировать с помощью скриптов, групповой ИИ, доступ к функциям низкого уровня, навыки персонажа: слух, зрение, навигация, доступ к объектам

Записанные события (зоны), поддержка рендерера DirectX 9:, до 3000000 полигонов на кадр в реальном времени, динамическое освещение в реальном времени, мягкие, физически правильные тени от каждого объекта, расчеты физики теней / полутени, постобработка кадра буферные и сложные фильтры.

Из этого выделим основные особенности движка:

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

В Stalker Clear Sky используется обновленная версия движка X-Ray 1.0 — X-Ray 1.5.

Clear Sky отличается от Shadows of Chernobyl несколькими способами, в первую очередь наличием фракционной войны и сменой фракции игрока.

В Shadows of Chernobyl вы тоже могли измениться, но это было сделано криво и разрезано пополам.

  • Добавлена ​​система прокачки снаряжения, когда в финальной части нужно было покупать либо новый ствол, либо броню, либо носить до перерыва, чтобы потом найти другой.
  • Изменения в движке тоже ощущаются в игре. С добавлением новых игровых возможностей игра приобретает новые цвета, особенно объемные лучи, которых не было в тени Чернобыля.
  • Из интервью с Игорем Лобанчиковым, старшим программистом, отвечающим за рендеринг, мы можем узнать, что было добавлено Steep Parallax Mapping для придания поверхностям большей рельефности.
  • Это было сделано для увеличения детализации графики, как я уже говорил ранее, были добавлены объемный свет и туман. Как говорит Игорь, такого тумана не было ни в одной игре.
  • Добавлено динамическое смачивание поверхностей. Когда игрок проходит через объемный дым / пар в подземельях, он меняет форму в зависимости от того, какой игрок прошел, и эта функция действительно работает в игре.
  • Доработаны тени динамических объектов, исправлено положение солнца: восходит на востоке, садится на западе. Добавлены отражения на воде.

А вот основные особенности движка X-Ray 1.5:

  • Поддержка DirectX 10, подробный рельефный дисплей, SSAO, объемный свет, солнечные лучи или как они там назывались — лучи Бога, динамические тени солнца, динамическая мокрая поверхность:
  • Карта дождя (карта теней для эффекта дождя), брызги воды, вода течет по поверхности
  • Динамический объемный дым, объемный огонь, мягкая вода, отображение крутого параллакса, контактные тени, мягкие частицы.

С движком проделано более чем достаточно работы, и изменения в графике впечатляют.

Зов Припяти — финальная часть игры S.T.A.L.K.E.R. Трилогия, разработанная на базе движка X-Ray 1.5.

Версия движка Зов Припяти — X-Ray 1.6.

Особенности игрового процесса, по отношению к ним есть изменения: это добавление в игру сна, модифицированная система прокачки снаряжения главного героя.

Повесив структуру квестов, они стали разнообразнее.

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

Был доведен до почти нормальной формы — искусственный интеллект, острая проблема всех звеньев сталкера.

Персонажи научились укрываться от взрыва, но не научились покидать коридоры.

Многие моменты кода были улучшены. В игре эти изменения незаметны для обычного игрока, но они есть.

Что касается графики, я выделил такие изменения, как измененные тени из интервью с Михаилом Парфенюком, который также отвечал за рендеринг. Чем ближе к объекту, тем четче граница и чем дальше, тем более нечеткая граница.

Добавлен новый тип SSAO, который использует вычислительные шейдеры для ускорения тактовой частоты пикселей и последнюю функцию — тесселяцию.

увеличивает многоугольник объектов, как говорит Михаил, это значительно улучшило внешний вид NPC и мутантов. На словах это выглядит хорошо, но на практике …

В качестве наглядного примера возьмем скриншоты трупа наемника. Взгляните на датчики и экзоскелет в целом.

Вот как они выглядят без тесселяции, что неплохо, но вот как они выглядят с включенной тесселяцией.

Я не понимаю, о каких полигонах говорил Михаил, но как игрок я вижу здесь припухлость.

Тело в костюме распухло. Что насчет датчиков?

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

А вот основные особенности движка X-Ray 1.6: Поддержка DirectX 11 за счет добавления HBAO, HDAO, CHS.

Как известно, S.T.A.L.K.E.R. 2 старой модели разрабатывалась на доработанном двигателе X-Ray 1.6 — X-Ray 2.0.

Информации по этому поводу вообще нет. Разработчики заявили, что игра будет основана на совершенно новом игровом движке, который был «построен с нуля». Фактически, они использовали свой оригинальный движок X-Ray, обновленный до версии 2.0. и изменен с учетом всех требований кроссплатформенности. Теперь S.T.A.L.K.E.R. 2 нового примера разработана на Unreal Engine 4.

Что за игра выйдет на этом движке — узнаем на выходе, пока об этом пока рано говорить.

Вы также можете найти модифицированную версию движка X-Ray 1.6 сторонними программистами в сети. Эти: OpenXRay и X-Ray Oxyden, которые дополняют возможности движка Call of Pripyat и удаляют ненужный мусорный код, который там скопился, ну много, но это, конечно, отдельная история.