Найти тему
Games with Unity

Обзор версии игрового движка Unity - 2019.1

Оглавление
Здравствуйте дорогие читатели!
В этой статье пойдёт рассказ о игровом движке Unity версии - 2019.1.

Не успели разработчики игр на Unity приспособиться к новым фишкам и инструментам разработки, появившимся в Unity 2018.3, как 16 апреля 2019 года, спустя всего 4 месяца, из бета версии вышла в официальный релиз новая версия движка - 2019.1, содержащая более 283 новых функций и улучшений. Обо всех рассказывать не буду, расскажу только о самых важных и интересных.

Unity 2019.1
Unity 2019.1

Итак, что же появилось в новой версии игрового движка?

Нововведения в мобильных платформах

Появилась поддержка уведомлений в Android 4.1 и выше и iOS 10 и выше. Теперь для вывода уведомлений, как во время игры так и при закрытой игре, не требуется встраивать нативные плагины в игровой проект, Unity научилась делать это сама.

Адаптивная производительность. Unity совместно с Samsung разрабатывают технологию, способную подстраиваться под производительность смартфона и самостоятельно оптимизировать игру и находить баланс между качеством и производительностью. В 2019.1 пока что доступна только предварительная версия технологии.

Адаптивная производительность в мобильных платформах
Адаптивная производительность в мобильных платформах

AR / VR

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

Увеличение инструментов для дополненной и виртуальной реальности
Увеличение инструментов для дополненной и виртуальной реальности

Поддержка Lightweight Render Pipeline (LWRP) для AR и VR. Подробнее о LWRP будет написано ниже, в разделе графических изменений, отмечу лишь то, что LWRP, в отличие от стандартной системы рендеринга изображения, ориентирован на высокую производительность без существенной потери качества картинки, что так важно в VR играх.

Внутренние изменения движка

Data-Oriented Technology Stack (DOTS), дословно стек технологий, ориентированных на данные. Это комплекс нововведений во внутренней структуре движка, меняющий подход к проектированию и программированию игр, позволяющий создавать богатые игровые миры с большим количеством элементов и сложными симуляциями жизни, способные работать практически на любом "железе". В него входят:

  • Улучшенная система работы с префабами, появившаяся в предыдущей версии 2018.3 и дополненная новыми функциями в 2019.1
  • Автоматическая оптимизация низкоуровневого кода, повышающая производительность на любых платформах
  • Система заданий для лучшего распараллеливания вычислений и использования преимуществ многоядерных процессоров
  • Новая система проектирования - Entity Component System, предлагающая перейти от объектно-ориентированного к ориентированному на данные проектированию и к которой ещё только предстоит привыкнуть программистам.
Кадр из сцены Megacity, спроектированной с применением новой технологии DOTS
Кадр из сцены Megacity, спроектированной с применением новой технологии DOTS

И другие технологии, позволяющие повышать производительность игр. К примеру демонстрационный проект Megacity удалось перенести на мобильную платформу! Скорее всего в последствии будут ещё представлены и другие технологии из серии DOTS, вектор направления развития движка задан.

Создание собственного физического движка Unity Physics и сотрудничество с разработчиками физического движка Havok.

Новый физический движок, созданный совместно с разработчиками движка Havok
Новый физический движок, созданный совместно с разработчиками движка Havok

Пока что Havok Physics (к слову использовавшийся в Red Faction: Guerrilla) недоступен, он ожидается в следующей версии Unity 2019.2, но новый физический движок Unity Phisics, который становится стандартным при использовании DOTS, создан при содействии разработчиков из Havok и уже доступен в новой 2019.1. В то же время поддержка исконного физического движка Nvidia PhysX не прекращается, он будет обновляться и улучшаться и использоваться при проектировании игр в старой модели, без использования технологий DOTS.

Улучшения в системе анимации

Появилась технология Animation Rigging, облегчающая работу 3D-аниматорам и позволяющая производить "риггинг" модели (создание костей персонажей или других моделей для анимации) прямо в редакторе Unity, без необходимости использования стороннего софта.

Новая технология Animation Rigging
Новая технология Animation Rigging

Графические изменения

В 2019.1 новых прорывных технологий не появилось, но зато были доработаны и улучшены имеющиеся технологии, благодаря чему графическая система стала более проработанной и оптимизированной. Сразу две технологические системы стали официально полнофункциональными - это Shader Graph и Lightweight Render Pipeline (LWRP).

Shader Graph - это визуальный художественный инструмент для построения шейдеров и визуальных эффектов без написания кода.

Lightweight Render Pipeline - это облегченный конвейер рендеринга, появившийся в Unity 2018.1 как предварительная версия. Ранее он был доступен только для проектов под PC и мобильных платформ. В версии 2019.1 он стал полнофункциональным, доработанным, стабильным, поддерживающим VR и Shader Graph.

Использование системы рендеринга изображения Lightweight Render Pipeline
Использование системы рендеринга изображения Lightweight Render Pipeline

Более качественный и нагруженный конвейер рендеринга High-Definition Render Pipeline (HDRP), созданный для использования в ААА проектах, тоже был улучшен и доработан новыми функциями. Среди них улучшенное отображение декалей, улучшение в модели освещения тканей и объёмного тумана.

Улучшенная модель освещения тканей
Улучшенная модель освещения тканей

Так же появился новый шейдер волос, доступный для редактирования в Shader Graph.

Шейдер волос
Шейдер волос

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

Так же был улучшен GPU Lightmapper - технология, применяемая для запекания теней в сцене, производящая расчёты падения света на графической карте. Он стал работать быстрее и качественнее.

Запечённые мягкие тени, используя GPU Lightmapper
Запечённые мягкие тени, используя GPU Lightmapper

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

Но несомненно все Unity разработчики будут стремиться, по мере своих возможностей, рано или поздно перейти на новую версию движка, возможно уже сразу на следующую - 2019.2.

Напоследок посмотрите демонстрационный ролик, созданный в новой версии игрового движка Unity 2019.1.

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