Написать пост

Unity и Unreal Engine

Аватарка пользователя Иван Белов

Рассказываем о двух топовых движках для игр: Unity и Unreal Engine, для чего они нужны и как освоить любой из них.

Для начала обозначим: что на Unity, что на Unreal Engine (UE) создаются крутые, прибыльные проекты. Движки не сказать, что кардинально различаются между собой.

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

Unity

Превью видео jTjshvo5pY4

В Unity можно создавать браузерные игры (используя WebGL). Почему это важно для начинающего специалиста? Один из способов набить руку и собрать живое портфолио — это участвовать в геймджемах. Веб-проект в таком случае соберёт больше комментариев и голосов, а вы получите обратную связь.

Unity и Unreal Engine 1
На itch.io это будет выглядеть примерно так. За счёт того, что игра сделана на Unity, разработчики и приложили билды, и залили игру на сайт.

Игра на скриншоте: Six Cats Under.

Выбирают Unity, когда:

  • игра казуальная или стилизованная;
  • игра делается под мобильные и веб-платформы;
  • игра в 2D.

Исторически сложилось, что этот движок более популярен в России и странах СНГ: на момент написания статьи по запросу «Unity Developer» нашлось 234 вакансии, а «UE/Unreal Engine Developer — 101».

Минусы движка: в Unity хуже оптимизация и сжатие 3D-моделей, если сравнивать с Unreal. Но в защиту хочу сказать, что на маленьких играх это «отставание» движка не сильно скажется, а опытные разработчики умеют решать проблемы производительности и оптимизации.

Как сделать игру на Unity?

При желании разработку можно переместить в Visual Studio — для этого нужно будет установить расширение в самой VS. Движок по умолчанию работает на C#, но есть подключаемые библиотеки с Java, C++, Lua и прочими языками (правда, это скорее костыли — надежно будет работать только C#). Научиться работать со скриптами в Unity можно в официальном курсе.

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

И большой мануал по всему Unity вообще.

Unreal Engine (UE)

Моего знакомого 3D-художника UE в своё время покорил удобством. Просто перетаскиваешь в проводник движка нужные модели и сразу используешь. Пытаешься добавить модель, у которой совпадает нейминг с существующей? UE при пользовательском «да» заменяет её и обновляет сцены, где та используется. Да и начать работу в UE проще — в движке доступны несколько заготовок, на которых можно потренироваться.

Я к тому, что UE выглядит и ощущается более юзер-френдли. Это субъективное мнение автора, если вы не согласны с ним — пишите в комментариях.

UE используют, если:

  • игра «серьёзная», с упором на красивую графику;
  • игра делается под ПК;
  • нужны реалистичные синематики.

Главный плюс UE в том, что он способен поддерживать высокополигональные модели и ренедерить их в режиме реального времени (что очень удобно для художников). Движок в принципе ориентирован на реалистичный 3D и оснащён мощными редакторами для моделей, анимаций и текстур. Поэтому ещё одно применение UE нашли в кинематографе.

Unity и Unreal Engine 2
В фильме «Воздух» (2023) некоторые боевые сцены и пейзажи были сделаны в Unreal Engine.

Источник скриншота: страница фильма на Кинопоиске.

А вот небольшой синематик с туториалом:

Превью видео 0iQJkSpOoOQ

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

Превью видео SeY-ousiCPg

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

Я говорю не о том, что UE «не подходит» мобилкам — взгляните на тот же Fortnite, который что на компьютере, что на смартфоне выглядит и работает замечательно. Просто не имеет смысла изучать такой мощный инструмент, чтобы всю жизнь работать над 2D-головоломками.

Как сделать игру на Unreal Engine?

Язык программирования UE — С++ (в интернете можно найти мануалы, как прикрутить С# и Python, но авторы плагинов не ручаются за стабильность проекта). Знакомство с движком можно начать с официальной документации.

Аналогично Unity, в UE есть визуальное программирование — Blueprints (которое, к слову, появилось раньше чем редактор Bolt в Unity). Правда, «уроки» по конкретным блюпринтам придётся искать самостоятельно: разработчики прикладывают лишь документацию к тому, какие бывают блюпринты. Но зато на обучающей платформе можно найти пошаговый гайд по созданию своей первой игры. Или обратиться к туториалам на ютьюбе:

Превью видео KQgOqyYoHAs

Резюмируем

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

Был ли у вас опыт работы с игровыми движками? Расскажите в комментариях.

471 открытий1К показов