Для чего нужен unreal engine
Разработчик игр на Unreal Engine 4: что умеет, сколько зарабатывает и почему UE4 — отличный выбор для начинающего специалиста
Чтобы собрать игру, нужна некая среда с определёнными техническими условиями и необходимыми инструментами. В качестве такой среды выступает игровой движок. Unreal Engine 4 — один из самых популярных движков, который используют как крупные компании, так и небольшие инди-студии. К примеру, на UE4 созданы Final Fantasy VII Remake, Returnal, Gears 5, Borderlands 3, Fortnite, Abzû, Observer и многие другие.
Узнали у Владимира Семыкина, автора направления «Геймдизайн» в Нетологии, об особенностях движка Unreal Engine, разнице между Blueprints и C++, а также насколько востребована профессия разработчика на Unreal Engine.
Энтузиаст геймдизайна, автор Нетологии
Почему Unreal Engine 4 — один из лучших движков для работы над играми
Есть несколько причин большой популярности UE4.
UE4 поддерживает большое количество функций, благодаря чему в нём можно создать практически любую игру.
В Unreal Engine 4 есть встроенная система визуального скриптинга, которая позволяет без особых препятствий выстраивать игровую логику даже новичкам.
Есть возможность сделать игру, которая запустится на всех популярных платформах: PlayStation, Xbox, Switch, ПК, iOS, Android.
У движка огромное сообщество пользователей, которые создают обучающие материалы, делятся друг с другом опытом и помогают решать проблемы. Дополнительный плюс большого сообщества — множество игровых ассетов, доступных для свободного использования в своём проекте.
Большое преимущество Unreal Engine 4 в универсальности и доступности — его могут использовать как опытные разработчики, так и новички, которые впервые берутся за создание игры. Всё дело в том, что UE4 по умолчанию поддерживает сразу два языка программирования: текстовый C++, в котором нужно писать строчки кода, и визуальный язык Blueprints, в котором игровая логика выстраивается при помощи связанных между собой блоков. Такой подход помогает сделать программирование более наглядным и понятным для тех, у кого нет опыта.
«Blueprints разработала компания Epic Games, чтобы дать инструменты программирования людям, которые далеки от этого. Поэтому научиться работать с Blueprints очень легко. Конечно, необходимо получить минимальную теоретическую базу, например, разобраться, что такое переменные и как работает функциональное и объектно-ориентированное программирование.
Но и эту теоретическую базу можно изучать, применяя Blueprints. И даже без неё можно сделать что-то интерактивное, например, кнопку, которая открывает дверь. Язык Blueprints крайне прост в освоении, и в нём есть много решений, которые делают его применение удобнее. Например, цветовая индикация различных типов переменных», — Антон Токарев, преподаватель Нетологии, геймдизайнер в Dreamside Interactive.
Большое преимущество Blueprints в том, что с его помощью можно быстро собрать базовый геймплей для игры.
Что такое движок Unreal Engine и зачем на него переходить?
Что такое Unreal Engine?
За свой почти 20-летний опыт в геймдеве я поработал с многими игровыми движками, а некоторые разрабатывал сам, будучи программистом. Занимался геймплеем, графикой, core-системами и игровым back-end для проектов на PC, консолях и мобильных платформах. И в разработке любого продукта вопрос игрового движка всегда является одним из очень важных.
Над игрой трудятся разные специалисты — программисты, художники, дизайнеры, саунд-дизайнеры и эксперты других профессий, которых сейчас в геймдеве очень много. Для создания качественного продукта им нужен набор инструментов — игровой движок.
Когда такого широкого доступа к популярным сегодня Unity, Unreal Engine, CryEngine и другим не было, люди садились и писали все сами. Это — сложно, долго и достаточно рискованно, так как не у всех команд хватает технических знаний и навыков для этого.
Но цель игровых студий — выпуск одной или нескольких игр, поэтому более практично переложить эту часть работы на крупные компании, у которых есть ресурсы для разработки набора инструментов, а самим сконцентрироваться непосредственно на игре. Особенно, если вы — маленькая/средняя студия или инди-разработчик.
Один из самых популярных движков сегодня – Unreal Engine, разрабатываемый и поддерживаемый компанией Epic Games. «Эпики» сегодня являются одним из столпов индустрии, особенно в технологической части. Потому уровень качества и количество фичей, которые предлагаются разработчикам, оставляют многих конкурентов позади.
Следующее преимущество UE — он бесплатный. Есть определенные условия и роялти, но весь инструментарий доступен сразу и в полном объеме для создания игры AAA-качества. Широкий функционал подразумевает непростой интерфейс, особенно для новичков, но об этом я расскажу ниже.
Сейчас большой объем работы при создании игры ложится на геймдизайн, креативный дизайн и создание контента. В Unreal есть все необходимое для дизайнеров, артистов и программистов, причем весь исходный код открыт — любую часть можно кастомизировать под проект. Это делает систему более гибкой. За счет открытости у UE большое комьюнити, а исправление найденных багов самим сообществом быстро попадает в официальные обновления.
Еще одним плюсом Unreal Engine является мультиплейерная игра «из коробки». Фактически, после запуска редактора в несколько кликов можно создать проект, в котором уже есть сетевая игра. Учитывая рост многопользовательских игр и ставки больших компаний на онлайн-режимы с несколькими игроками, это серьезное преимущество, которого, например, нету у Unity.
Как перейти с Unity на Unreal Engine и какие могут быть сложности?
Для начала скажу, что Unreal Engine сейчас — один из стандартов в геймдеве, потому для профессионального развития каждый специалист игровой разработки должен знать его базовый инструментарий.
Если вы работали с Unity, то переход на UE не будет сложным. Для дизайнеров и художников достаточно будет в течение нескольких дней просто изучить основы движка, многие концепции похожи. А вот программистам может потребоваться больше времени. Я рекомендую видео от самих Epic Games, где детально объясняется работа с движком для новичков и опытных разработчиков.
В зависимости от особенностей работы, каждый специалист обратит внимание на свое, но общий совет: смотреть на отличия в реализации той или иной функциональности.
Например, программисту искусственного интеллекта стоит обратить внимание как реализованы Behavior Tree в Unreal Engine и сравнить с тем, что он использовал раньше, а техническому художнику — как импортировать ассеты и настраивать уровни детализации в движке или редактор материалов. На этап ознакомления у команды может уйти одна-две недели.
Следующий момент — это C++, на котором написан Unreal. Кроме того, что этот язык — достаточно сложный, есть специфика самого UE (теги, маркап), управление памятью. Потому с ним придется разбираться чуть дольше, особенно если раньше вы писали только на C# или Python. Но код на С++ работает все еще быстрее других языков, и трудность в усвоении — некая плата за техническое качество и производительность финального проекта.
Для тех, кто переходит с Unity, неким вызовом может стать система классов, которая в Unreal Engine более сложная. Намного чаще в разработке игрового кода приходиться использовать наследование от базовых классов Unreal, а не только компоненты. В остальном же эти системы похожи, и у специалиста, работавшего на других популярных движках, не возникнет особых проблем при переходе на UE.
Добавлю, что при смене движка всей командой важно понимать, в каком состоянии находится проект и насколько опытная команда над ним работает. Если разработка ушла уже далеко вперед, например, игра сделана на две трети, переход на новый движок — это очень большой риск. Среднего уровня команда может и не справиться.
UE4 и UE5 – в чем разница?
По показанному на прошлой неделе демо трудно судить о различиях между версиями Unreal Engine 4 и 5 версии, но две презентованные системы — Lumen и Nanite выглядят интересно.
Первая — это модель глобального освещения, которая перестраивается в реальном времени. Пока сложно сказать, насколько она будет гибкой и интерактивной, и какие инструменты будут доступны художникам. Демо — это высококачественная реалистичная картинка, но многим играм, чтобы вызвать какие-то определенные эмоции у игроков или выделиться, нужно ее менять, дабы получить уникальный вид.
Вторая система, Nanite, позволит переносить в игру ассеты высокой детализации, например, из ZBrush. Здесь Unreal Engine сам берет на себя работу по построению низкополигональной модели. Эта задача уже неоднократно обсуждалась в геймдеве и были не совсем удачные попытки ее решить.
Если система будет работать, как заявлено, это позволит перенести 30-40% работы художников на движок и существенно сэкономит время создания игры. Сейчас же художники руками простраивают низкополигональную модель, таким образом дублируя свою работу.
Пятая версия игрового движка от Epic Games носит не революционный, а скорее эволюционный характер. К Unreal Engine 4 также выходило несколько обновлений с крупными системами — Chaos Physics и эффекты Niagara, они тоже входят в основу UE5.
Кроме того разработчики заявили об обратной совместимости проектов на UE 4 и UE 5, а значит, ядро движка значительно не меняется и система базовых классов, на которых строится геймплей, останется такой же. Но нужно ждать релиза.
Стоит ли начинающему геймдизайнеру осваивать Unreal Engine?
Однозначный ответ — да, стоит. Да, у Unreal Engine есть особенности, которые могут отпугнуть геймдев-новичков. Интерфейс редактора достаточно перегружен и непрост в освоении. Естественная первая реакция начинающего разработчика на это — зачем вот эти параметры, кнопки и окна нужны? Да и C++ не самый простой язык программирования, потому многие начинают с Unity, хоть и там ситуация в чем-то похожа. С другой стороны, освоив Unreal, можно получить опыт работы с сильным и гибким инструментом для создания игр AAA-уровня.
Но и назвать UE недосягаемым для начинающих тоже нельзя. В Wargaming есть хороший пример — геймдизайнер Кирилл Маль, историк по образованию. Он работает в компании уже 20 лет и тоже освоил Unreal Engine около года назад. Теперь с небольшой командой из 5 человек работает над одним из наших проектов.
Планируете ли вы в дальнейшем сконцентрироваться только на Unreal или вам просто интересно сравнить его с другими — движок от Epic Games уже стал технологическим стандартом в индустрии, и с профессиональной точки зрения его стоит освоить. Благо, для этого есть много пособий, гайдов, курсов и огромное сообщество профессиональных разработчиков.
Например, в эту субботу, 23 мая, состоится бесплатный Unreal Meetup от Wargaming, где будет спикер и из Epic Games.
Список ресурсов для начинающего UE-разработчика:
YouTube-канал от авторов Unreal Engine
Туториалы:
Курсы:
Автор: Евгений Строков, CTO подразделения WG Nexus компании Wargaming
Чего ждать от Unreal Engine 5 и что он умеет в сравнении с UE4
Содержание
Содержание
Геймеры, заставшие 1990-е годы, помнят имена Джона Кармака и Тима Суини — программистов, фактически определивших, как выглядят современные игры. Но если Кармак давно не в id Software и не занимается id Tech, то Суини по-прежнему прихорашивает Unreal Engine. Будущее видеоигр, несомненно, тесно связано с UE5. И если фотореалистичная графика покорилась еще UE4, то чем же удивит UE5 на PC и «некстгене»? Разберемся в новой статье.
История Unreal Engine: от Unreal до Gears of War
Unreal (1998) вышла спустя два года после Quake, первого полностью трехмерного шутера. Игра базировалась на движке Unreal Engine. Его написал Тим Суини, основатель и глава Epic Games. Сейчас Суини знают по бесплатным раздачам игр в Epic Store и судебному разбирательству с Apple. И сейчас, и на заре карьеры Суини программирует движок самостоятельно. Миллиарды долларов, заработанные на Fortnite, и почтенный возраст (50 лет) ему ничуть не мешают.
Чем же удивила первая версия Unreal Engine? В Unreal поражало красивое небо, прозрачная вода, хитрый искусственный интеллект. Радовала динамическая смена музыки — композиторы позаботились о вариациях тем для разных ситуаций. Текстуры не ужасали при приближении. Еще можно вспомнить порталы и зеркальные отражения.
Были и проблемы. Так, с рендерером Glide на видеокартах 3dfx движок взаимодействовал без нареканий. С OpenGL и Direct3D — увы, нет. Шутер Unreal ценили за графику, однако на слабых и средних компьютерах он работал плохо.
Epic исправила недостатки в Unreal Tournament (1999) и заодно причесала сетевой код, иначе в мультиплеерный FPS никто бы не стал играть. Кстати, UT99 основана на UE1.5 — промежуточной версии движка. Впоследствии выпуск подобных итераций с небольшими правками (с поддержкой текстур почетче и последних технологий) превратился для американской студии в норму.
UE задумывался как продукт для лицензирования. Суини встроил в него удобный редактор UnrealEd и язык программирования UnrealScript. От UnrealScript он отказался только к выходу UE4.
И действительно — Unreal Engine покупали крупные компании. В 2000 году свет увидели Deus Ex и Rune, взращенные как раз на UE. В наши дни UE лицензируют для десятков проектов, но в 1990-е и 2000-е годы разработчики зачастую сами писали движок для конкретной игры, универсальных инструментов на рынке не наблюдалось. UE попытался предстать универсальным. Он подавался как мультиплатформенная технология и даже позволял наладить кроссплатформенный мультиплеер.
UE2 помнят по Unreal Tournament 2003 (2002), Splinter Cell (2002), Postal 2 (2003) и другим играм. Среди его новшеств — поддержка VoIP (голосовой связи в многопользовательских матчах), неплохая физика транспорта (помните режим Onslaught в Unreal Tournament 2004?), скелетная анимация и, конечно, физический движок Karma. Он гарантировал, что тело врага после попадания отлетит эффектно, на манер тряпичной куклы.
С UE2 изменения пробрались не только на компьютеры, но и на консоли. Так, Unreal Championship (2002) вошла в историю как одна из первых консольных игр, что получила патч по интернету.
UE3 уже ближе к современности. Как известно, переход от шестого к седьмому поколению консолей сопровождался гигантским рывком в плане качества графики. В революции поучаствовал третий Unreal Engine, выступив «сердцем» Gears of War (2006), Mass Effect (2007), Borderlands (2009).
К UE3 в Mortal Kombat vs. DC Universe (2008) обратился Эд Бун. Вы удивитесь, но недавняя Mortal Kombat 11 тоже использует UE3, пусть и за долгие годы серьезно переписанный программистами NetherRealm Studios!
В числе «фишек» UE3 упомянем попиксельный расчет освещения и теней, поддержку технологии генерации растительности SpeedTree и DirectX 10-11, правдоподобную симуляцию толпы. На смену Karma пришла NVIDIA PhysX. Из недостатков отметим порой медленную загрузку текстур.
UE3 расширил список привычных платформ. Он покинул пределы PC и консолей и обосновался на iOS и Android, взять небезызвестную Infinity Blade (2010). За движок охотно садились независимые разработчики — в итоге мы имеем, к примеру, The Vanishing of Ethan Carter (2014) и Life Is Strange (2015).
Особенности Unreal Engine 4
UE4 отбыл в свободное плавание в 2014 году. Вам наверняка попадались на глаза файтинги на этом движке (Tekken 7, Street Fighter V), слэшеры (Hellblade: Senua’s Sacrifice), стратегии (Battlefleet Gothic: Armada), платформеры (Yoshi’s Crafted World, Psychonauts 2), RPG (Vampyr, Final Fantasy VII Remake, Kingdom Hearts 3), шутеры (PUBG, S.T.A.L.K.E.R. 2: Heart of Chernobyl)… Разброс жанров широк, количество проектов с трудом поддается подсчету. В крупнобюджетной разработке UE4 практически стал синонимом понятия «игровой движок».
В нем Epic наконец вынесла за скобки собственный язык программирования UnrealScript. Создавать игры в UE4 вы можете либо на языке C++, либо пользуясь визуальным инструментом программирования — так называемыми «блюпринтами», они же «чертежи». Теоретически они позволяют вообще обойтись без кода.
Технология, придуманная Тимом Суини, шагнула за пределы игровой индустрии. На 2023 год, например, запланирована премьера мультфильма Gilgamesh от аргентинского режиссера Томаса Липгота. Картина о герое Древней Месопотамии примечательна тем, что целиком снята в программной среде Unreal Engine.
Unreal Engine и Unity
У UE сейчас только один приличный соперник — Unity. Его с 2005 года совершенствует Unity Technologies. В основном движок распространен в мобильном секторе (Pokemon Go, Monument Valley, Hearthstone), однако громкие игры для PC и консолей в активе тоже есть: Firewatch, Inside, отечественные Escape from Tarkov и «Мор». Под стать UE, Unity — мультиплатформенный инструмент.
Исходный код UE4 открыт. Unity Technologies на такую щедрость не отважилась.
В Unreal Marketplace хватает бесплатных материалов для создания игр. Магазин с моделями и материалами для конкурирующего движка называется Unity Asset Store. Тут тоже присутствуют халявные ассеты, но их часто ругают за низкое качество.
В случае UE4 можно выбирать между C++ и «блюпринтами». У Unity языком программирования выступает С#, а аналогом «блюпринтов» служит инструмент Playmaker, однако его придется докупать отдельно.
Unity хвалят за низкий порог вхождения и обилие учебных материалов в сети. Освоить UE4 сложнее, зато многие функции работают «из коробки».
В итоге нельзя однозначно сказать, какой из движков лучше. Исторически сложилось так, что UE4, как правило, берут для AAA-игр, Unity — для мобильных и инди-проектов.
Что нового в Unreal Engine 5
Первый показ UE5 состоялся в мае 2020 года. В числе двух главных «фишек» движка Epic заявила Nanite и Lumen. Из обеих выгоду извлекут и разработчики, и геймеры.
Описывая Nanite, Epic пускает в дело определения «виртуализированная геометрия» и «микрополигональный рендеринг». Что это значит? Разработчики теперь смогут загружать в движок модели высокого, кинематографического качества из миллионов полигонов. Впоследствии их не придется искусственно «портить», ухудшать детализацию, чтобы движок смог вывести всю эту красоту на экран с приемлемой кадровой частотой.
Напротив, благодаря Nanite не нужно соглашаться на компромиссы. Не нужно думать, среди прочего, о настройке LOD (level of detail) — уровней детализации моделей для разных ситуаций. Раньше, чтобы сэкономить ресурсы, разработчики делали, допустим, один вариант модели для близкого расстояния, второй — для среднего, третий — для дальнего. Но Nanite в UE5 рендерит изображение из расчета полигон на пиксель дисплея, то есть чем разрешение выше, тем картинка четче. Без разницы, лицом к лицу вы с персонажем или в сотне метров от него, количество полигонов в модели не уменьшится. Есть одно «но»: иногда число объектов в кадре зашкаливает, и тогда приходится использовать уловку с динамическим (изменяемым в зависимости от нагрузки) разрешением.
Дебютную техническую демоверсию UE5 компания Epic назвала «Lumen in the Land of Nanite». Демка обсчитывалась в реальном времени на PS5 в разрешении 1440p при 30 кадрах/с. Разрешение динамическое. Epic использовала 8K-текстуры и сделала статую, на которую натыкается героиня демки, из 33 миллионов полигонов. Позже в зале девушка видит 485 таких статуй, что дает нам свыше 16 миллиардов полигонов.
Теперь о Lumen. Это система динамического глобального освещения в реальном времени. Она выступает чем-то средним между «лайтмэпами» (карта статичных источников света), известными с 1990-х годов, и рэйтрейсингом. Представьте сцену, созданную в UE5: освещение реагирует на смену условий (например, со дня на ночь) и окружения — медленно открываешь окно, и комнату правдоподобно заливает светом. Причем от поверхностей лучи отражаются бессчетное количество раз.
В «Lumen in the Land of Nanite» есть момент, где героиня протискивается в узком пространстве Поначалу пресса подумала, что это пресловутое «бутылочное горлышко» — ухищрение от дизайнеров уровня. «Бутылочное горлышко» позволяет выгрузить из памяти старые данные и загрузить новые при переходе между просторными сегментами уровня. В итоге геймер изображает какую-то деятельность, а не скучает за загрузочным экраном. В играх «бутылочное горлышко» обычно замаскировано лифтом или щелью. Однако Джефф Фаррис, один из технических специалистов Epic, заверил, что разработчики нарочно создали этот момент — чтобы вы поближе рассмотрели детали сцены.
В мае 2021 года американская компания организовала еще один показ UE5 и раскрыла некоторые его особенности через технодемку «Valley of the Ancient». Вот что заслуживает внимания в движке, помимо Nanite и Lumen:
Интерфейс в UE5 «взрослее», чем в UE4, с небольшими иконками. Расположение разделов изменено, но в целом для обучения сгодятся даже уроки, посвященные четвертой версии движка. UE5 требовательнее UE4, «народной» GeForce 1060 ему не хватает, разработчикам придется докупать GeForce RTX.
Крупные студии потихоньку показывают результаты трудов на UE5. Так, The Coalition, которая сейчас развивает серию Gears of War, недавно выложила на YouTube запись демки «Alpha Point» на Xbox Series X.
Ассеты в «Alpha Point» состоят из 300 000–500 000 треугольников. В среднем в Gears 5 на объект приходится в 15 раз меньше полигонов.
Ресницы персонажа, вылепленного The Coalition на UE5, содержат 3500 полигонов, то есть примерно столько же, сколько в целом было в модели героя эпохи Xbox 360.
Unreal Engine 5 распространяется по программе раннего доступа с мая 2021 года. Масштабный запуск намечен на начало следующего года. Движок заточен под PC, PS5 и Xbox Series, но готовить в нем можно будет и проекты для консолей предыдущего поколения, а также для мобильных устройств.
Какие игры выйдут на UE5? Пока известно о Senua’s Saga: Hellblade 2, Dragon Quest XII: The Flames of Fate, ArcheAge 2 и Fortnite. UE5 держит курс на фотореализм уровня голливудских блокбастеров. Пожалуй, уже Hellblade 2 даст понять, так ли это на самом деле.