Обзор Universal Render Pipeline (URP)

URP (Universal Render Pipeline или Универсальный Конвейер Рендеринга) — это один из встроенных способов построения и обработки графики в Unity, основанный на Scriptable render pipeline (SRP). Он задаёт правила обработки изображения и предоставляет определённые инструменты, для её кастомизации. Так, например, в URP можно писать полноэкранные шейдеры, что было проблематично с SRP (примечание: это старый конвейер рендеринга в Unity).

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

Особенности URP

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

Одной из важных особенностей URP является поддержка мобильных устройств и легкость оптимизации для достижения высокой производительности даже на слабых устройствах.

Разрабатывать собственные шейдеры для URP в целом проще, чем для HDRP. В Unity для этой цели есть бесплатный инструмент под названием Shader graph, с помощью которого можно разработать разные шейдеры без программирования.

За счёт того, что и URP и HDRP были основаны на Scriptable Render Pipeline — процесс рендеринга является настраиваемым и довольно контролируемым на каждом этапе отрисовки кадра (некоторые фазы можно контролировать даже с помощью кода на C#). А это предоставляет отличные возможности как для оптимизации, так и для создания уникальных визуальных эффектов. Достаточно просто взглянуть на количество настроек и вы поймёте, что вы действительно можете контролировать многие аспекты рендеринга.

Продвинутые пользователи даже могут создать собственный вариант SRP или создать свой на основе URP или HDRP.

Почему стоит выбрать URP?

Разработчики Unity в своей электронной книге, посвященной URP, приводят следующие доводы:

  • Доступность — с URP могут работать даже художники;
  • Высокая производительность — URP предоставляет схожую (иногда более высокую) производительность по сравнению со встроенным конвейером отрисовки (не зря Unity хотят в будущем перевести редактор именно на URP, как на конвейер по-умолчанию);
  • Совместимость с современным инструментарием — речь идёт о поддержке Shader Graph, VFX Graph и т.п.

Система декалей

Довольно классной фишкой, доведённой до ума является URP Decal Projector. Эта система позволяет проецировать текстуры на другие объекты, чтобы увеличить количество деталей в сцене, без изменения её моделей. Например, с её помощью добавить графити или следы от пуль на стены, и т.п.

Нечто похожее уже существовало в Unity и до этого, но эта система предоставляет намного больше контроля и работает лучше (за счёт того, что была заточена под и так производительный URP).

Пример декали с помощью URP Decal Projector в Unity
Пример добавления декали на стену.

Заключение

Объединяя вышеперечисленные особенности, URP представляет собой мощный инструмент для создания игр с высококачественной графикой, оптимизированных для различных платформ и способных удивить игроков красотой и реализмом игрового мира.

Вам определённо стоит использовать именно его, если ваша игра ориентирована не на ультимативно реалистичную графику для топовых ПК.

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии