Unreal engine что это за программа
«Настоящий некстген, который лучше не пропускать» — Digital Foundry о технодемо «Матрицы» на Unreal Engine 5
На некстген-консолях стало доступно технодемо Unreal Engine 5 в обёртке «Матрицы». Простые пользователи смогли запустить The Matrix Awakens только сегодня, одновременно с премьерой на The Game Awards, однако спецы Digital Foundry успели провести с демо несколько дней и уже опубликовали первые впечатления.
Демо разделено на три основных сегмента:
В The Matrix Awakens используются следующие технологии Unreal Engine 5:
Одна из целей демо — показать, какую локацию в городском антураже можно соорудить на Unreal Engine 5 силами относительно небольшой команды. Сцена получилась большой и проработанной, о чём рассказывает Epic в своей статистике:
Судя по словам Digital Foundry, абсолютно всё технодемо рендерится в реальном времени. Это же накладывает ограничения: общая частота кадров ограничена 30 кадрами в секунду, а кат-сцены и вовсе работают в «кинематографичных» 24 fps. Кроме того, встречаются просадки. Правда, автор Digital Foundry добавляет, что это всё-таки технодемо, а не полноценно оптимизированная игра, так что производительность может быть не отполирована.
Подробнее о технических аспектах приложения Digital Foundry поговорит в будущих материалах, но промежуточный итог таков: это крайне впечатляющая презентация возможностей наступившего поколения консолей.
The Matrix Awakens — это обязательное приложение для ознакомления. Просто потому что оно опровергает опасения о том, что нынешнее поколение устройств не сможет совершить большой скачок по сравнению с предшественниками. У многих такое впечатление сложилось из-за целого года кроссген-игр, где основные достоинства новых консолей сводились к разрешению, фреймрейту и детализации (и иногда трассировке лучей). Перед нами — видение будущего, и оно потрясает. То, что Nanite хорошо работает на консолях и может совмещаться с рэйтрейсингом, — это особенно впечатляющий факт.
Ричард Лидбеттер (Richard Leadbetter), автор Digital Foundry
The Matrix Awakens доступна на PlayStation 5 и Xbox Series (включая младшую Series S). Впоследствии проект технодемо (в том числе ассеты) откроется для экспериментов всем пользователям Unreal Engine 5.
Unreal Engine 4 для развития своих способностей
Доброго времени суток, Хабр!
В этой статье я бы хотел поговорить с вами о недавно вышедшем Unreal Engine 4, который на данный момент набирает все большую популярность среди разработчиков игр. И хотя статья о UE4, однако она совсем не про игростой, хоть и связана с ним.
Я бы хотел обратить ваше внимание на другую сторону Unreal Engine 4, которая будет несомненно полезна тем, кто собирается выбрать свой путь в жизни и обучаться разработке. Речь об образовательных способностях данного движка.
Саму статью я бы хотел разделить на две основные части: Программирование с логикой и Дизайн с творчеством. Но прежде скажу пару слов о себе, что бы вы понимали, почему именно этот движок и что меня натолкнуло на эту статью.
Итак, приступим.
О себе
Меня зовут Александр и мне сейчас 20 полных годиков. Вся жизнь ещё впереди и самое время определиться со своим будущим. Года три назад я начал увлекаться 3х-мерным моделированием и к сегодняшнему дню, на мой взгляд, добился хороших результатов. Ещё с детства я любил играть во всякие компьютерные игры и, как и многие, мечтал сделать что-то подобное. Поэтому моя специальность направлена в основном на real-time моделирование.
Однако для создания полноценных игр мне этого не хватало, так как я не знал языков программирования, хотя мат. мышление было на хорошем уровне. Я пытался познать PHP, C++, Lua, RubyOnRails, JS. Но максимум, на что меня хватило, это Jquery, да и тот через неделю после курса умудрился забыть. Все это довольно таки разочаровывало, но я не сдавался, продолжая тем временем совершенствовать свои способности в 3х-мерной графике.
Меньше года назад вышел UE4 и я, как поклонник Unreal Tournament и самого Unreal Engine, очень обрадовался. Побежал учить. Тут я бы хотел проводить вас к следующим пунктам, которые расскажут, что может дать UE4, помимо самих игр.
Программирование и логика
Как некоторые знают, в движке можно писать игровую логику на С++, а так же с помощью визуальной системы программирования — Blueprint. Для тех, кто не знает, выглядит она так:
Алгоритм сортировки (методом вставки) по цене предметов в инвентаре
Как раз об этой системе я и хотел бы с вами поговорить. Будем называть её «Блупринт».
Блупринты — это визуальный скриптовый язык, который позволяет написать логику игры без применения языков программирования. Каким бы сложными или простым он не казался, он остается довольно таки мощным инструментом, на котором можно создать почти что угодно, от простенького персонажа или открытия дверцы до процедурной генерации уровня.
Когда в первый раз его увидел, я был очень рад, что смог повторить попытку изучения программирования на данной системе. И действительно все пошло куда лучше, чем с текстовыми языками. Я начал с простых вещей. Переменные, простые функции, что куда соединять и все в таком духе. Тогда (это было летом 14-го года) я ещё не очень хорошо соображал, как правильно организовывать работу, как правильно и оптимизированно строить алгоритмы. Но постепенно я стал осваиваться в данной системе.
Через какое-то время стал делать простенькие игрушки. Стал разбираться в классах, в коммуникациях между отдельными объектами, миром и глобальными классами. Тут-то я заметил, что становлюсь настоящим программистом — после компиляции Блупринтов и запуска с проверкой все работало как надо. Счастья было очень много.
Через какое-то время я начал вникать в более сложные вещи и понимать, что все могу написать лучше и более оптимизированно. Таким образом я переписывал свою систему инвентаря (часть которой на скриншоте) не менее трех раз, чтобы добиться наилучшей работы. Да и сейчас продолжаю улучшать, так как система в свободном доступе. На данный момент в Блупринтах разобрался очень хорошо и могу сделать почти все, что угодно (в разумных пределах, конечно).
В итоге данная система научила меня не только работать с ней же, но и очень хорошо дала понять, что нужно строить логику грамотно, оптимизированно и обдуманно, и как это делать. Так же очень хорошо развила логику в сфере построения алгоритмов.
Таким образом, начинающие игроделы, программисты, или просто люди, которые заинтересованы в том, что бы сделать что-то свое, могут без труда обучиться не только работе с Блупринтами, но и узнать много новых вещей, не говоря уже о развитии логики.
Давайте взглянем на другой пример — Материалы:
Тут работа происходит таким же образом, однако нету никаких логических последовательностей, только математика.
С помощью математических операторов и текстур вы строите материал, который в последствии будет наложен на какой-либо объект в вашей сцене. С самого начала может быть не понятно, и зачем это все вообще нужно, однако, как это ни странно, данная система оказывается очень полезной для того, что бы создавать нужные или даже генерируемые материалы.
Давайте возьмем простенький пример: у материала может быть цвет и гладкость; у вас есть текстура, на которой изображены различные делали вашего предмета, и она вся красивая и радует глаз. Но наложив на модель просто текстуру, вы понимаете, что тут чего-то не хватает. Точно! Вот эта часть должна быть гладкая и отражать мир вокруг, а вот эта делать наоборот матовой без каких либо отражений. Тут вам может пригодится математика, что бы из вашей текстуры сгенерировать черно-белую карту, где белый цвет будет означать матовую часть, а черный — гладкую.
Изучав материалы и принцип их работы, можно добиться хороших успехов и в алгебре. Да и не только в ней, но и опять же в самой логике, так как все формулы нужно придумывать самому.
Вот пример материала, который генерирует цвет, металические делали, гладкость в нужных местах и даже рельеф. Все это из одной текстуры:
Конечно, текстура не обычная, а специальная, но суть в том, что после изучения системы и небольшого опыта, вы научитесь строить самые невероятные вещи.
Подытожив часть логики и программирования, хотел бы сказать, что с помощью даже этих двух инструментов, любой человек сможет развить в себе логическое мышление и рано или поздно научиться строить такие системы, о работе которых он не имел не малейшего понятия. Ну и даже написать свою игру ему не составит труда, а с этим опытом можно спокойно идти учить более мощные языки программирования, или хотя бы иметь представление о будущем в подобной сфере.
Дизайн и творчество
Вам когда-нибудь хотелось построить свой дом, походить в нем? Снять свой фильм? Или просто создать красивую или мрачную сцену что бы выплеснуть накопившиеся эмоции? Если да, то Unreal Engine 4 вам тоже сможет чем-то помочь.
Вот несколько впечатляющих роликов, демонстрирующие графические возможности:
А так же в сфере визуализации архитектуры:
Конечно, тут не обошлось без красивых 3д моделей, анимации и всего прочего. Однако я хотел подметить особенность графики, которую может выдавать этот движок в реальном времени.
Сам же Unreal Engine 4 предоставляет некоторый набор, благодаря которому можно создать что-то свое, не прибегая к стороннему софту (не считая текстур). Не хочу вдаваться в подробности, которые вы сами сможете изучить, если заинтересуетесь, однако упомянуть все же стоит.
Внутри редактора существует инструмент, под названием BSP, благодаря которой вы можете спроектировать сцену. Хотя инструмент и предназначен для проектирования, а не для финального результата, но с помощью него можно сделать несложную модель и даже сконвертировать её для того, что бы она могла подвергаться физике. Можно сделать дом, забор и тому подобное. Что угодно, на что хватит терпения, так как инструмент пока что не самый удобный в использовании.
Так же предоставляется инструментарий для создания ландшафтов, с помощью которого возможно сделать довольно красивый пейзаж и населить его теми самыми моделями, а так же растительностью и какими-то дополнительными деталями. Добавив немного пост обработки, с которой, кстати, работать не так-то трудно, можно получить замечательную картину природной сцены. Тут уже зависит от вашего воображения.
Для тех, кто знаком с 3х-мерным моделированием, в UE4 будет ещё больше возможностей. Простота в импортировании (через формат FBX), простота установки, наложение материалов, да и их создание тоже не такое сложное, если разобраться, работа со светом, запекание и многое другое.
Сам я тоже создаю 3D модели и заметил за собой, что все время хочется проверить, как модель будет выглядеть внутри движка. И, признаюсь, качество не уступает современным рендерам.
Работа пользователя The_Distiller с официального форума
Конечно стоит учитывать, что рендеринг происходит в реальном времени, и не все всегда настолько реалистичный, какой мог бы быть, но плюс здесь в том, что вы можете свободно перемещать камеру для просмотра под любым углом.
Конечно, тут можно придумать ещё множество преимуществ. Например, визуализация архитектуры в реальном времени на примере видео, что было выше. Снятие красивых 3д роликов без многочасового рендера. Даже есть поддержка VR очков, благодаря чему можно сделать виртуальный тур. А представьте, если этот тур будет по той реалистичной квартире? Словом, для творческих людей тут тоже найдется местечко.
Подводим итоги
Несмотря на то, что Unreal Engine 4 является движком для создания компьютерных игр, его можно использовать в самых различных целях. В данной статье я хотел выставить его со стороны образования и как личного помощника в развитии своих мыслительных способностей. Не хочу судить свой текст, однако я постарался расписать максимально понятно для людей любого возраста и профессии и, надеюсь, в будущем движок поможет очень многим, в том числе юному поколению.
Конечно, не стоит рассматривать UE4 как набор кнопок «сделать все хорошо». Инструмент очень мощный с впечатляющим функционалом, поэтому изучить все и сразу тоже не получится. Однако если вы сумеете поставить себе стимул и наберетесь достаточно терпения, то все у вас получится!
Сам я изучаю UE4 не больше 7-ми месяцев и преуспел во многих сферах внутри редактора, даже открыл свое сообщество. Однако ещё много чего не изучено, поэтому в будущем от меня могут быть дополнительные статьи. Если и эта статья вам понравится, конечно.
Разработчик игр на 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 4 для инди и прототипирования
Последняя статья из цикла «Разработка» — работаем с редактором UE4, пишем логику без навыков программирования и начинаем конкурс работ.
Автор: Александр Блинцов. Специализируется на Unreal Engine. В Pixonic является клиентским разработчиком и отвечает за разработку и поддержку технической стороны нового сетевого мобильного шутера.
Уже две статьи цикла «Разработка» были полностью посвящены Unity и различным туториалам для этого движка. А в этой я расскажу об относительно молодом Unreal Engine 4. Несмотря на то, что оригинальный UE существует уже два десятилетия, новая версия была почти полностью переписана и сильно повлияла на разработку игр в целом. Мы рассмотрим основные плюсы этого движка для начинающих инди-разработчиков с упором на тех, которые никогда раньше не занимались программированием.
Одно из главных преимуществ движка — это множество инструментов и возможностей «из коробки». Не нужно писать или покупать плагины, достаточно скачать редактор, и можно приступать к разработке.
Несмотря на «новизну» UE4, сообщество вокруг движка растёт очень быстро, появляется огромное количество туториалов, документации, ассетов и плагинов.
Сразу после запуска движка вам предложат выбрать один из шаблонов. Можно, конечно, открыть пустой, но всегда легче переписывать и дополнять что-то готовое, если шаблон подходит к выбранному жанру.
Стоит обратить внимание на демки из лаунчера Epic Games (вкладка Learn/Изучить). Там можно найти очень много проектов на разные темы. Причём это практически полноценные прототипы игр, с логикой и графикой.
Демо идеально подойдут новичкам — их можно изучать или сделать свой проект на их основе. Все готовые шаблоны и демо можно использовать в коммерческих целях.
Лайфхак: можно собрать проект полностью на основе предложенного контента, а потом потихоньку заменять его на свой, оригинальный.
После выбора шаблона или демо-проекта вы попадёте в редактор. В первый раз здесь можно потеряться — в UE4 огромное количество фичей и кнопочек, а у каждого ассета есть ещё и внутренний редактор для настройки контента. Например, в отдельном редакторе статичных мешей можно сгенерировать низкополигональные модельки, а в редакторе анимаций создать позы или изменить анимацию.
Может показаться, что редактор перегружен функционалом, но в этом и плюс: всё необходимое находится в одном месте. Хотя создавать хороший контент (модели, звуки, текстуры и т.д.) всё равно придётся в сторонних программах.
Зато в UE4 есть инструменты для прототипирования, благодаря которым можно собрать билд игры вообще без использования других программ. Например, с помощью Brush’ей можно смоделировать базовый мир и предметы. А уже потом поменять их на более качественные или оставить как есть, если стилистика проекта позволяет.
Прежде чем заменять тестовый контент на собственный, стоит написать механику, то есть кор-геймплей, от которого зависит почти всё в вашей игре. Обычно для этого нужно изучать язык программирования (в Unity, например, это С#, а в UE4 — C++) и писать код, чтобы всё работало как задумано. Но новички могут обойтись и без этого.
В Unreal Engine 4 есть Blueprints — специальный инструмент визуального программирования. Он позволяет строить логику игры с помощью блок-схем из нод. Инструмент достаточно наглядный, простой и интересный в работе. Например, оба скрипта на скриншотах ниже создают мигающую лампочку.
С блюпринтами работать намного легче, потому что в них невозможно допустить синтаксическую ошибку — подать неправильный тип данных или забыть поставить нужный знак. Ещё блюпринты защищают от вылетов программы. Например, если в С++ попытаться получить доступ к несуществующему объекту, игра вылетит, а в блюпринтах просто появится ошибка в логе.
Звучит слишком хорошо, чтобы быть правдой. Подвох в том, что несмотря на низкий порог входа и наглядность, блюпринты — полноценный инструмент объектно-ориентированного программирования (ООП).
Оно требует практики, чтобы правильно всё организовывать, разделять по классам, компонентам и держать в чистоте. Кроме того, с помощью блюпринтов не получится отправить внешний запрос (например, по http), поработать с файловой системой компьютера или подключить стороннюю библиотеку. Для этого придется качать плагины или писать их самостоятельно. Но в остальном можно обойтись и дефолтными блюпринтами — внутри движка они умеют всё, что нужно.
В итоге игру можно написать только на блюпринтах (причём не только одиночную, но и сетевую) и во многих случаях разницы в производительности не будет. Хотя зависит от самой игры.
В Unity, кстати, тоже есть аналогичный инструмент. Он называется Playmaker, но стоит 45 долларов.
Предположим, у вас уже готов прототип игрового мира и механика геймплея. Теперь нужно импортировать модели и настроить материалы к ним, чтобы всё выглядело как нужно. Мы обойдёмся готовыми ассетами.
Ещё важно настроить материалы, то есть шейдеры. Обычно они пишутся кодом в других программах, но в Unreal Engine 4 и на этот случай есть визуальный инструментарий, который позволяет описать инструкции шейдера нодами. Может показаться запутанным, но на самом деле для простых материалов присоединить нужные текстуры и получить реалистичный вид не так сложно.
Добавив еще немного смешиваний, можно получить эффекты поинтереснее.
Чего ждать от 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 даст понять, так ли это на самом деле.