Туториал по unreal engine. часть 1: знакомство с движком

RPC

Далее стоит учесть, каким образом мы будем вызывать ивент. У каждого RPC ивента есть условие, только выполнив которое мы продолжим выполнение кода.

Мы создали другой ивент, производящий рассылку на все клиентские копии объекта. Чтобы он выполнился, мы обязаны вызвать этот ивент с сервера.

Теперь рассмотрим, в чем особенность каждого RPC и какие нюансы скрывает от нас движок. 

Run on owning client 

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

Опять же смотрим на условие запуска ивента — “if server”.
На этой картинке — другая ситуация. В роли ивента Run on owning client выступает InputAction Sprint. Все инпут экшены вызываются из контроллера и являются по-дефолту Run on owning client. В следующей ноде мы видим приставку “if owning client” — это значит, что запрос спокойно отправится на сервер.

Run on server 

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

Так или иначе, монтаж захочет подвинуть персонажа вперед, что потребует вмешательство сервера. Стоит знать, что единственно «правильная» копия персонажа находится на сервере, поэтому ему мы передаем только монтаж, который надо проиграть. Что же произойдет дальше — посмотрим в следующем в виде RPC. 

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

Multicast 

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

С клиента отправили запрос на сервер. Сервер доволен нашим запросом: никаких проверок не потребовалось. Далее он отправляет запрос на все клиентские копии этого персонажа и заставляет их проиграть монтаж.

Что за “Reliable”?

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

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

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

Когда использовать “Reliable”?

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

Представьте, если игрок выстрелит из оружия, увидит анимацию и эффекты от выстрела, но враг не получит урона. Это не игрок «криворукий», это запрос на выстрел затерялся и не дошел до сервера. Либо дошел до сервера, но затерялся на моменте рассылки всем клиентам.

Чтобы таких казусов не было, мы и выставляем Reliable. Но! Представим ситуацию, когда мы стреляем по рандомному ящику на столе

Его падение для игрового процесса совсем не важно, т.е. никак не повлияет на баланс

На такие события Reliable не нужен — нам ни к чему нагружать сервер просчетом визуальной части.

Разделяем логику

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

На картинке ниже представлена функция OnRepDead; это значит, что когда переменная Dead изменяется на сервере, функция, привязанная к этой переменной, запустится сразу на всех клиентах и на сервере. Такие переменные имеют тип репликации OnRepNotify, который можно выставить во вкладке Details.

Следуем по цепочке: if Dead == True then… О боже! Неизвестная нам нода!

Спокойно! Эта функция очень проста — Switch Has Authority позволяет нам разделить логику на то, что происходит на сервере, и на то, что происходит на клиенте. Authority = сервер, Remote = клиент.

Получается, что вся техническая байда пойдет по ветке Authority, т.к. она геймплейно важна для нас; а вся визуальная (в нашем случае — включение рэгдолла на скелете) — по ветке Remote. Это сделано для того, чтобы сократить код и не возлагать на клиента или на сервер то, чем он заниматься не должен.

Final Fantasy VII Remake

Ремейк культовой ролевой игры 1997 года. Проект, разработанный и выпущенный студией Square Enix для PlayStation 4 в 2020 году. За первые три дня после релиза совокупные продажи достигли 3,5 миллиона копий.


Скриншот: игра Final Fantasy VII Remake /

Из-за технических ограничений в оригинальной FF VII перемещение по миру происходило по фиксированным экранам. В оригинале было много коротких путей с быстрыми переходами к следующему месту. Одна из целей Square Enix при создании ремейка заключалась в том, чтобы заполнить пробелы в локациях игры 1997 года.

Сцена танца в HoneyBee Inn из Final Fantasy VII Remake

Например, чтобы обновить ночной клуб HoneyBee Inn, разработчики использовали Лас-Вегас, французский «Мулен Руж» и японский бурлеск в качестве источников вдохновения. Зрелищное шоу с танцевальной битвой — пример того, как Square Enix отдала дань уважения оригиналу, передала знакомое, но всё же несколько иное ощущение, которое пронизывает всю игру и её мир.

«Для Final Fantasy VII мы использовали рендер Unreal Engine в качестве основы, но также создали большую часть отражений, скиннинг, постэффекты, тоновый маппинг и, конечно же, материалы и освещение. Таким образом, я чувствую, что, благодаря не только мощному движку, но и возможности настройки UE4, мы смогли плавно интегрировать и адаптировать движок с помощью тех знаний, которые мы накопили к этому моменту в Square Enix».

Наоки Хамагути,один из руководителей разработки ремейка Final Fantasy VII

Бонусы

Помимо самого курса Вы также получите целых 5 отлично дополняющих основной курс Бонусов. Все эти Бонусы – это чистая практика для знаний, полученных из курса. Это очень ценная практическая информация.

Динамическая смена дня и ночи

В этом Бонусе из 10 уроков Вы научитесь созданию мощного механизма смены дня и ночи с нуля. Вы увидите, как настраиваются кривые, чтобы рассвет и закат было именно в нужное Вам время. Узнаете, как сделать вращение солнца, как сделать красивое звёздное ночное небо, как сделать луну и фазы луны, которые ещё будут плавно меняться с течением времени. Узнаете, как сделать всё максимально удобным для настройки и как добавить, чтобы время плавно менялось с заданной скоростью во время игры. Также узнаете, как сделать правильное освещение, чтобы ночью было темно, а днём было светло.

Создание динамической погоды

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

Создание искусственного интеллекта для NPC

Во многих играх NPC живут по своему расписанию. Например, утром просыпаются, идут завтракать, затем идут на работу, вечером идут гулять, потом ужинают и идут спать. И вот реализацию такой системы Вы и увидите в этих 7 уроках данного Бонуса.

В результате наши NPC будут жить строго по заданному нами расписанию и будут: гулять, есть и спать. Причём, спать они будут исключительно в своей кровати. А в качестве места для приёма пищи будут выбирать ближайшее место для этого. Также Вы увидите, как легко всё это расширяется для добавления новых возможных действий для NPC.

Создание игры под мобильные устройства

Не секрет, что Unreal Engine всё больше и больше пользуется популярностью у разработчиков мобильных игр. В целом, процесс создания игры под мобильные устройства не сильно отличается от создания игры на ПК. Однако, есть множество мелких нюансов, которые надо учитывать. И в рамках 10 уроков этого Бонуса, мы с Вами об этих нюансах поговорим, а попутно создадим мобильный шутер от первого лица, в котором надо сражаться с постоянно появляющимися и атакующими игрока зомби.

Морально готовимся к мультиплееру

В документации к UE4 есть отличная статья, покрывающая все аспекты работы с сетью. К сожалению, не каждый начинающий поймет, о чем там вообще говорится (к тому же на примерах C++). Поэтому я постараюсь изложить ее как можно проще в блюпринтовом варианте.

Итак, игровая логика разделяется на две сущности:

Клиент — машина игрока, визуализирующая графику игры и рассчитывающая не важные для геймплея вещи. Например, проигрывание анимации: чтобы не нагружать сеть пакетами, все движения костей просчитываются на машине игрока; сервер же только передает ссылку на нужную анимацию.

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

Все сказанное, разумеется, предполагает условности. Если вам, например, необходимо отобразить ragdoll у всех клиентов одинаково — просчитайте его на сервере, никто не запрещает. Это ваше право как разработчика решать, что и где происходит.

Система на пальцах

Unreal Engine 4 предлагает разработчику систему RPC (Remote Procedure Calls), которая позволяет клиенту и серверу общаться друг с другом через ивенты.

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

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

Любой эктор может быть реплицирован. Для этого достаточно поставить галочку на “Replicates” в его классе. К остальным настройкам вернемся позже.

Пример

Мы подключились к сессии CS:GO и играем за террориста, в другой же команде — один спецназовец. Получается, сейчас в игре три копии террориста и три копии спецназовца. У каждого из персонажей собственный owner — владелец — у которого есть явное преимущество в управлении своим персонажем.

Наша беседа с сервером представляется в виде «запрос — обдумывание — ответ». Мы говорим серверу — хочу пойти вперед! Передаем ему вектор нашего движения, сервер обдумывает, можем ли мы туда пойти, и выносит окончательный вердикт в виде нашего перемещения. Другой игрок не сможет нас подвинуть — у него нет таких привилегий.

Но! Спецназовец все-таки видит наши перемещения. Как же это происходит? Обдумав наш запрос, сервер может послать ответ только нам, а может и всем клиентам, как в случае с перемещением.

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

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

— Сервер, все ок? Могу я ножик посмотреть?— Так, с последней полученной пули прошло 5 секунд… Все отлично, братан. Отправляю разрешение только на твою копию персонажа.

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

Переходим к коду

Как же выглядят эти запросы в коде? Логически все происходит так же, как и в примере с CS:GO, только с наложением некоторых условий.

Теперь рассмотрим эти самые условия, которые выражены в виде RPC. Это типы ивентов, которые позволяют разработчику настраивать «тоннели», через которые игроки будут отправлять запросы серверу, а сервер — свои ответы игрокам. 

Чтобы превратить обычный ивент в RPC, нам достаточно кликнуть по вкладке “Replicates” в деталях ивента и выбрать тип передачи данных.

Стоит запомнить, что RPC могут быть только ивенты, но никак не функции.

Когда выйдет Unreal Engine 5 и игры на этом движке

Несмотря на обилие информации по новому движку, попробовать его получится только лишь в начале 2021 года. Сначала компания Epic Games выпустит превью-версию, в которой будет работать весь основной функционал. Скорее всего, некоторые разработчики уже давно получили раннюю сборку UE5, чтобы побыстрее выпустить первые игры на новом движке.

Как утверждают создатели инструментария, прямо сейчас на базе их нового движка создается несколько проектов для консолей следующего поколения, среди которых есть и эксклюзивные игры для PlayStation 5 и Xbox Series X. Тем не менее пока что единственный проект, который точно будет работать на UE5, это Fortnite. Игру переведут на новый движок посредством крупного обновления.

Подводя итог, можно сказать, что Unreal Engine 5 — это не просто следующая версия известного движка, а большой шаг вперед для всей игровой индустрии. Разработка на этом движке будет проще, быстрее и удобнее. Это новая техническая веха и новая планка качества графики. Именно на UE5 будут создано большинство самых красивых игр в грядущие пять-десять лет. Одни плюсы и практически никаких минусов.

  • Epic Games анонсировала Unreal Engine 5 и показала графику нового поколения с PS5 — видео
  • PlayStation 5 не потянула Unreal Engine 5 в 4K — интервью Epic для Digital Foundry
  • Так выглядит будущее: Unity показала короткометражку The Heretic с фотореалистичной картинкой

Феноменальная детализация

Лучше всего работу Nanite иллюстрирует сцена со статуями воинов из демо. На ней каждый солдат состоит из 33 миллионов полигонов и имеет 8K-текстуры. Это высокая детализация даже для сцены с одной такой статуей, однако в кадре их 485 штук, то есть одних только их полигонов на сцене примерно 16 миллиардов.

И никакого значительного падения производительности, потому что движок не отрисовывает все эти полигоны, он создает только по одному полигону на каждый пиксель — ровно столько, чтобы не пропустить ни одной заметной детали, как говорит Тим Суини, глава Epic Games (Tim Sweeney).

Несмотря на то, что это звучит довольно просто, у лучших специалистов Epic Games ушло три года на создание движка, который воплотит в жизнь эту идею.

Впрочем, у Nanite есть одно слабое место: для конвертации на лету потребуется большая пропускная способность диска. В случае, если игра установлена на твердотельный накопитель, никаких проблем не будет, так что тем, кто планирует купить PlayStation 5 или Xbox Series X, а также владельцам компьютеров в SSD, можно не волноваться. А вот для тех, кто до сих пор устанавливает игры на жесткий диск, Nanite может стать причиной более долгих загрузок.

Hellblade: Senua’s Sacrifice

Приключенческую игру о путешествии пиктской воительницы в скандинавский мир мёртвых разработала и выпустила британская студия Ninja Theory в 2017 году. Разработка велась за собственный счёт компании, команда из двадцати человек за три года смогла создать инди-игру с технологиями ААА-проекта.


Скриншот: игра Hellblade: Senua’s Sacrifice

Сеттинг Hellblade — микс тёмного фэнтези, кельтской и скандинавской мифологии. Главная героиня — Сенуа — направляется в Хельхейм, чтобы воскресить своего возлюбленного. Сенуа несёт с собой его отрубленную голову, веря, что в ней покоится душа Диллиона.

Героиня страдает психическими расстройствами, её преследуют голоса и видения. Чтобы достоверно отобразить психоз, Ninja Theory привлекала к разработке специалистов по психиатрии, благотворительные фонды и людей, страдающих психическими расстройствами.

Двадцатый дневник разработчиков Hellblade, посвящённый motion capture

Разработчики создали реалистичную анимацию для Сенуа с помощью motion capture. Мелина Юргенс изначально работала в Ninja Theory видеоредактором и не была актрисой, но в Hellblade именно она подарила внешность, мимику и голос главной героине. Конференц-зал в здании Ninja Theory стал импровизированной студией захвата движений. Технологии, позволившие реализовать анимации Сенуи:

  • камеры Bonita компании Vicon;
  • шесты из IKEA;
  • дешёвые ЖК-телевизоры;
  • экшн-камеры GoPro;
  • шлем для крикета с закреплённой веб-камерой;
  • система освещения, устроенная в цветочном горшке.

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

Бизнес-модель игры создатели назвали «независимым ААА». Ninja Theory смогла объединить достоинства двух полярных частей игровой индустрии. Senua’s Sacrifice сочетает в себе высокий для инди-игры уровень графики. При этом студия смогла сохранить бюджет на низком уровне, так что им не нужно было продавать миллионы копий, чтобы окупить разработку.

К тому же цена на Hellblade в два раза ниже привычной стоимости ААА-игр — 30 долларов вместо 60. Продажи в пятьсот тысяч копий окупили проект и начали приносить прибыль спустя три месяца после релиза.

«В творческом плане мы добились успеха, но ещё одна наша глобальная цель — доказать, что существует пространство между инди и ААА-играми, которое может работать на коммерческой основе

Для нас важно поделиться нашей коммерческой моделью на благо других разработчиков. Чем больше у нас будет данных по альтернативным бизнес-моделям, тем больше студий смогут пойти на осознанный коммерческий и творческий риск»

Тамим Антониадес, один из основателей Ninja Theory


Изображение: арт к игре Senua’s Saga: Hellblade II / Xbox

Ninja Theory могла позволить себе не делать игру в рамках популярных жанров, которые привлекают большую аудиторию, поэтому у студии осталось больше простора для творчества. Подход привёл команду к успеху: игра получила положительные отзывы критиков, и разработчики объявили о разработке сиквела, Senua’s Saga: Hellblade II. Это один из первых проектов, которые разрабатываются на движке Unreal Engine 5.

Глобальное динамическое освещение

Каждая новая итерация Unreal Engine перерабатывает систему освещения. В случае с «Пятеркой» речь идет о технологии глобального динамического освещения Lumen. По сути это надстройка над системой освещения в UE4.

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

Как и в случае с Nanite, создание такой динамической системы стало возможным благодаря распространению твердотельных накопителей. Их чрезвычайно высокая пропускная способность позволяет отказаться от многих компромиссов в разработке, генерируя контент почти мгновенно. В одном из интервью Тим Суини сказал, что особенно его впечатлила скорость работы SSD в PlayStation 5.

What Remains of Edith Finch

Приключенческая инди-игра была разработана американской студией Giant Sparrow и выпущена компанией Annapurna Interactive в 2017 году. Главная героиня What Remains of Edith Finch обследует старый особняк, где прожили несколько поколений её предков. Героиня под управлением игрока изучает по документам и артефактам обстоятельства их жизни и смерти.


Скриншот: игра What Remains of Edith Finch / ArtStation

Каждая из историй рода Финчей подаётся как флешбэк с отличительным визуальным стилем и уникальными геймплейными механиками. Нарративный дизайнер Антон Радус выделял эпизод с фабричным рабочим — он разделывает рыбу и воображает целый фэнтезийный мир. Игрок одновременно управляет героем на фабрике и его аватаром в вымышленном мире.

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

Игра получила высокие оценки прессы, была удостоена ряда наград, в том числе The Game Awards за лучшее повествование и премии Британской академии в области видеоигр как лучшая игра 2017 года.

CryEngine

Движок, созданный немецкой студией Crytek, автором Far Cry и Crysis. С 2004 года CryEngine обзавёлся несколькими итерациями, и его технические возможности улучшаются до сих пор. Чтобы в этом убедиться, достаточно сравнить первую часть Far Cry и современный MMO-шутер Hunt: Showdown. После выхода Crysis фотореалистичные шутеры от первого лица стали визитной карточкой технологии, однако движок подходит и для разработки игр в других жанрах, а также для неигровых проектов.

Разработчики CryEngine практикуют подход What You See Is What You Get — «что видишь, то и получишь». Когда разработчик создаёт в редакторе CryEngine Sandbox сцену и переносит её в игру, она выглядит и работает так, как задумано, и ей не требуются дополнительные правки. В 2016 году Crytek открыла доступ к исходному коду движка, чем воспользовались многие студии. Например, Warhorse Studios сильно модифицировала CryEngine для разработки ролевой игры Kingdom Come: Deliverance. Известно, что все актуальные части серии Far Cry, права на которую сейчас принадлежат Ubisoft, сделаны на движке Dunia Engine, а в его основе находится как раз CryEngine.

Презентационный трейлер движка


Скриншот из Hunt: Showdown — игры, созданной на CryEngine. Скриншот: Hunt: Showdown / Steam

Преимущества:

  • мультиплатформенность (Windows, Linux, PlayStation 4, Xbox One, Oculus Rift, OSVR, PSVR, HTC Vive), в будущем возможно портирование на Android — сейчас идёт бета-тестирование;
  • огромный выбор инструментов «из коробки»;
  • подходит для масштабных игр AAA-уровня, особенно для игр с видом от первого лица;
  • у перспективных проектов (в том числе неигровых) есть возможность получить кастомную лицензию.

Недостатки:

  • не так популярен, как его конкуренты Unity 3D и UE4;
  • сложно найти специалистов по движку из-за небольшого размера комьюнити;
  • если проекту требуется функциональность, расширенная в сравнении с той, что есть в «коробке», большинство сетевых модулей и инструментов придётся создавать с нуля: по словам разработчиков, то, что представлено в GameSDK, либо устарело, либо перегружено лишними функциями.


Скриншот из Kingdom Come: Deliverance — игры, созданной на CryEngine. Скриншот: игра Kingdom Come: Deliverance / Steam

Игры на движке: Kingdom Come: Deliverance, Deceit, Evolve, Prey, Hunt: Showdown.

«С CryEngine тяжело работать, если нужно создать динамичный шутер. Его физический движок не подходит для такой концепции. Также не стоит делать на его основе сложные RPG. Инструменты разработки недостаточно гибкие, и вам потребуется много ресурсов, чтобы построить все основные системы с нуля. <…> На данный момент сообщество CryEngine совсем небольшое, но очень отзывчивое. Большинство специалистов хорошо осведомлены о различных аспектах разработки, так как сами знакомы с движком ещё со времён моддинга Crysis. Кроме того, разработчики технологии часто делятся своими знаниями в Discord и тематических статьях

Дмитрий Шевченко, тимлид студии TALLBOYS (Pandemic Express).

«What is the best game engine: is CryEngine right for you?», январь 2020 года


Скриншот из Pandemic Express — Zombie Escape — игры, созданной на CryEngine. Скриншот: игра Pandemic Express / Steam

«Ключевая механика Deceit — смена дня и ночи в игре. С наступлением тьмы роли игроков меняются: „плохие парни“ становятся ещё ужаснее, что может напугать и ввести в замешательство „хороших“. CryEngine отлично подчёркивает эту атмосферу с помощью освещения и теней. <…> Динамика движка хорошо сочетается с итеративной разработкой, что помогает при нелинейных пайплайнах. В этом плане CryEngine значительно выделяется на фоне конкурентов. Арт-отдел тесно сотрудничает с отделом геймдизайна на всех этапах проекта, чтобы настроить освещение и разместить объекты по ходу разработки. Это преимущество помогает тестировать различные идеи и стирать границы между концепцией, дизайном и фазами препродакшна.

<…> CryEngine отлично работает с рендерингом в реальном времени, позволяя изменять огромное количество визуальных эффектов на лету. Параллельная работа наших технических специалистов со SpatialOS (технология симуляции действий) даёт нам понимание того, что наиболее релевантно для игрока. Всё это помогает добиться в игре детализированности окружения без лишних нагрузок на «железо»».

Сэм Хиллс (Sam Hills), бывший комьюнити-менеджер Automaton Games (Deceit).

«Why Developers Choose CryEngine?», сентябрь 2018 года


Скриншот из Deceit — игры, созданной на CryEngine. Скриншот: игра Deceit / Steam

Star Wars Jedi: Fallen Order

Action-adventure от третьего лица во вселенной «Звёздных войн». Издателем выступила Electronic Arts, разработчики — американская студия Respawn Entertainment, известная по серии шутеров Titanfall.


Скриншот: игра Star Wars Jedi: Fallen Order / Steam

Геймплей вызывает в памяти игровой процесс серии Dark Souls: игрок изучает большую локацию и сражается со сложными врагами. Места для медитации позволяют сохраняться, после каждой медитации все убитые враги возрождаются. После смерти игрок теряет очки опыта, а чтобы их восстановить, нужно добраться до места гибели.

Трейлер запуска Star Wars Jedi: Fallen Order

«Звёздные войны» актуальны всегда, а жанр souls-like стал одним из трендов игровой индустрии второй половины 2010-х годов. Стартовые продажи Fallen Order за первые полтора месяца составили более восьми миллионов копий. В мае 2020 года игра продалась тиражом более десяти миллионов копий.

«UE4 предоставил необходимую функциональность и гибкость, поэтому выбор Respawn пал на него. У нас формировалась отдельная команда для работы над Jedi: Fallen Order, было легче найти людей с опытом работы на Unreal Engine 4. EA использует Frostbite для всех своих внутренних проектов. Но в то время мы были внешней студией, у нас даже доступа к нему не было. Само собой, теперь у нас есть возможность им пользоваться, но выбор всё равно за нами — мы решаем, какой движок лучше подойдёт для нашей игры».

Стиг Асмуссен,гейм-директор Star Wars Jedi: Fallen Order