Это руководство является обновленной версией следующей записи в блоге Unity: Рекомендации для команды Spotlight: настройка конвейера освещения — Пьер-Ив Донзаллаз.
Определения
Во-первых, давайте пройдемся по определениям нескольких важных графических отрисовкипроцесса рисования графики на экране (или в визуализировать текстуру). По умолчанию основная камера в Unity отображает изображение на экране. Подробнее
Ознакомьтесь в Словарь, которые часто встречаются в этой статье.
- конвейер рендеринга определяет, как объекты в вашей сценеСцена содержит окружение и меню вашей игры. Думайте о каждом уникальном файле сцены как об уникальном уровне. В каждой сцене вы размещаете свое окружение, препятствия и декорации, по сути проектируя и создавая свою игру по частям. Подробнее
См. в Словарь отображаются в три основных этапа.- Первый шаг – отбраковка; в нем перечислены объекты, которые необходимо визуализировать, предпочтительно те, которые видны камереКомпонент, который создает изображение определенной точки обзора в вашей сцене. Вывод либо рисуется на экране, либо фиксируется в виде текстуры. Подробнее
См. в Словарь (отсечение усеченной вершины) и незакрытые другими объектами (отсечение окклюзиифункция, которая отключает рендеринг объектов, когда они в данный момент не видны камере, потому что они скрыты (перекрыты) другими объектами. Подробнее
См. в Словарь). - Второй этап, рендеринг, представляет собой отрисовку этих объектов с правильным освещением и некоторыми их свойствами в пиксельных буферах.
- Наконец, постобработкапроцесс, улучшающий внешний вид продукта путем применения фильтров и эффектов до того, как изображение появится на экране. Вы можете использовать эффекты постобработки для имитации физических свойств камеры и пленки, например Bloom и Depth of Field. Дополнительная информация постобработка, постобработка, постобработка
См. в Словарь операции могут выполняться на эти буферы, например, применение цветокоррекции, цветения и глубины резкостиэффект постобработки, имитирующий свойства фокуса камеры объектив. Подробнее
См. в Словарь, чтобы создать окончательный выходной кадр, который отправляется на дисплей. устройство.
- Первый шаг – отбраковка; в нем перечислены объекты, которые необходимо визуализировать, предпочтительно те, которые видны камереКомпонент, который создает изображение определенной точки обзора в вашей сцене. Вывод либо рисуется на экране, либо фиксируется в виде текстуры. Подробнее
Эти операции повторяются много раз в секунду, в зависимости от частоты кадров.
- ШейдерПрограмма, работающая на графическом процессоре. Подробнее
См. в Словарь — это общее название программы, или набор программ, работающих на графическом процессоре (GPU). Например, после завершения этапа отбраковки Вершинный шейдерПрограмма, которая запускается для каждой вершины 3D-модели, когда модель рендерится. Подробнее
См. в Словарь используется для преобразования координат вершин видимые объекты из «пространства объектов» в другое пространство, называемое «пространством клипа»; эти новые координаты затем используются графическим процессором для растеризации сцены, то есть преобразования векторного представления сцены в реальные пиксели. На более позднем этапе эти пиксели будут окрашены пикселемнаименьшей единицей компьютерного изображения. Размер пикселя зависит от разрешения вашего экрана. Пиксельное освещение рассчитывается для каждого пикселя экрана. Подробнее
См. в Словаре (или фрагменте) шейдеров; цвет пикселя обычно зависит от свойств материала соответствующей поверхности и окружающего освещения. Еще одним распространенным типом шейдеров, доступных на современном оборудовании, являются вычислительные шейдеры: они позволяют программистам использовать значительную параллельную вычислительную мощность графических процессоров для любых математических операций, таких как светофильтр, физика элементарных частиц или объемное моделирование. - Прямое освещение — это освещение, создаваемое самоизлучающим источником света, например лампочкой, а не отражением света от поверхности. В зависимости от размера источника света и его расстояния до приемника такое освещение обычно дает четкие отчетливые тени.
- Прямое освещение не следует путать с направленным освещением, которое представляет собой свет, излучаемый бесконечно удаленным источником света (например, смоделированным на компьютере солнцем). Заметными свойствами направленного света являются способность покрывать всю сцену параллельными световыми лучами и отсутствие уменьшения расстояния (или затухания света); то есть количество получаемого света не уменьшается по мере увеличения расстояния до источника света.
- На самом деле солнечный свет, как и любой другой источник света, падает с расстоянием по закону обратных квадратов. Проще говоря, количество получаемого света очень быстро падает при увеличении расстояния между приемником и источником света. Например, освещенность Меркурия почти в 7 раз выше, чем на Земле, а Марс получает почти половину солнечного света Земли, тогда как Плутон получает всего 0,06%. Тем не менее, для большинства приложений реального времени с очень ограниченным диапазоном высот затухание солнечного света незначительно. Таким образом, направленного света вполне достаточно для имитации солнечного света в большинстве сцен Unity, включая большие планетарные открытые миры.
- Непрямое освещение возникает из-за того, что свет отражается от поверхностей, а затем передается и рассеивается в среде, например в атмосфере или полупрозрачных материалах. В этих условиях окклюдеры обычно отбрасывают мягкие или неразличимые тени.
-
Глобальное освещениеГруппа методов, которые моделируют как прямое, так и непрямое освещение для получения реалистичных результатов освещения. В Unity есть две системы глобального освещения, сочетающие прямое и непрямое освещение: запеченное глобальное освещение и глобальное освещение в реальном времени.
См. в Словарь (GI) — это группа техник которые моделируют как прямое, так и непрямое освещение, чтобы обеспечить реалистичные результаты освещения. Существует несколько методов GI, таких как запеченные/динамические карты освещенияпредварительно обработанная текстура, которая содержит эффекты источников света на статике объекты в сцене. Карты освещения накладываются поверх геометрии сцены для создания эффекта освещения. Подробнее
См. в Словарь, объемы освещенности, объемы распространения света, датчики запеченного/динамического света , GI на основе вокселей и GI на основе поля расстояния. По умолчанию Unity поддерживает запеченные/динамические карты освещения и зонды освещения. - программа освещенияИнструмент в Unity, который создает карты освещения в соответствии с расположением свет и геометрия в вашей сцене. Подробнее
См. в разделе Словарь — это базовая система, которая генерирует данные для карт освещения и освещения. исследует световые лучи, вычисляя отражения света и применяя полученное освещение к текстурам. Таким образом, различные карты освещения часто создают разные виды освещения, поскольку они могут полагаться на разные методы для получения данных об освещении.
Обзор
На следующей блок-схеме представлен общий вид всего конвейера освещения в Unity с точки зрения создателя контента.
Вы начинаете с выбора конвейера рендеринга. Затем вы решаете, как создается непрямое освещение, и соответственно выбираете систему глобального освещения. Убедившись, что все глобальные настройки освещения настроены надлежащим образом для вашего проекта, вы можете продолжить добавлять Lights, Emissive Surfaces, Reflection ProbesКомпонент рендеринга, который захватывает сферический вид своего окружения во всех направлениях. , скорее как фотоаппарат. Захваченное изображение затем сохраняется как кубическая карта, которую можно использовать для объектов с отражающими материалами. Подробнее
См. в Словарь, Световые зондыСветовые зонды хранят информацию о том, как свет проходит через пространство в вашей сцене. Набор световых зондов, расположенных в заданном пространстве, может улучшить освещение движущихся объектов и статических пейзажей LOD в этом пространстве. Подробнее
См. в Словарь и Прокси-тома Light Probe (LPPV). Подробное описание использования и функций всех этих объектов освещения выходит за рамки этой статьи, поэтому я рекомендую вам прочитать раздел «Освещение» в руководстве, чтобы узнать, как правильно использовать их в своих проектах.
Конвейеры рендеринга
До начала 2018 года в Unity был доступен только один конвейер рендеринга. Встроенный конвейер рендеринга. Этот конвейер рендеринга предлагает выбор из путей рендерингатехники, которую Unity использует для рендеринга графики. Выбор другого пути влияет на производительность вашей игры и на то, как рассчитываются освещение и затенение. Некоторые пути больше подходят для разных платформ и оборудования, чем другие. Подробнее
См. в Словарь: переслать и отложить.
- При использовании (многопроходного) прямого пути рендеринга все объекты в сцене визуализируются один за другим последовательно, возможно, в несколько проходов, в зависимости от количество источников света, воздействующих на каждый объект, поэтому стоимость рендеринга может резко возрасти, когда объекты освещаются несколькими источниками света. Этот тип визуализатора обычно предлагает широкий спектр шейдеров и может легко обрабатывать прозрачность.
- При использовании пути отложенного рендеринга все (непрозрачные) геометрии сначала визуализируются в буферах, в которых хранится информация об их материалах (цвет, блики, гладкость и т. д.). .). В более позднем проходе (отсюда «отложенный») каждый пиксель затеняется последовательно: время рендеринга будет зависеть главным образом от количества источников света, воздействующих на каждый пиксель. Для прозрачных объектов и некоторых объектов со сложными шейдерами по-прежнему потребуется дополнительный упреждающий рендерингпуть рендеринга, который отображает каждый объект в одном или больше проходов, в зависимости от света, воздействующего на объект. Сами источники света также обрабатываются Forward Rendering по-разному, в зависимости от их настроек и интенсивности. Подробнее
См. в проходах Словарь. Отложенный рендеринг обычно рекомендуется при работе со сценами, содержащими много динамического освещения, например, в интерьерах с искусственным освещением или в проектах с сочетанием наружного и внутреннего освещения.
В январе 2018 года компания Unity представила конвейер рендеринга с возможностью сценариев (SRP), который позволяет настраивать цикл рендеринга с помощью сценариев C#. На самом деле это небольшая революция в области игровых движков: пользователи наконец-то могут персонализировать выборку объектов, их отрисовку и постобработку кадра без необходимости использовать низкоуровневый язык программирования, такой как C++.р>
В настоящее время Unity предоставляет два готовых SRP:
- конвейер рендеринга высокого разрешения (HDRP) — это гибридный отложенный/прямой рендеринг тайлов/кластеров. Он предлагает расширенные функции рендеринга и затенения и предназначен для ПК и продвинутых консольных проектов, требующих высокой степени визуальной точности.
Плитка – это небольшой участок кадра с квадратными пикселями в двух измерениях, а кластер – трехмерный объем внутри усеченной пирамиды камеры. Как тайловый, так и кластерный методы рендеринга основаны на перечислении источников света, влияющих на каждую отдельную плитку и кластер, освещение которых затем можно вычислить за один проход с соответствующим списком известных источников света. Непрозрачные объекты, скорее всего, будут затенены с помощью тайловой системы, тогда как прозрачные будут полагаться на кластерную систему. Основным преимуществом является более быстрая обработка освещения и значительное снижение потребления полосы пропускания по сравнению со встроенным конвейером рендеринга (отложенным), который зависит от гораздо более медленного многопроходного накопления света.
- универсальная визуализация Pipeline (URP) – это быстрый однопроходный прямой рендеринг; он был разработан в первую очередь для устройств более низкого уровня, не поддерживающих технологию вычислительных шейдеров, таких как старые смартфоны, планшеты и XRзонтик термин, охватывающий приложения виртуальной реальности (VR), дополненной реальности (AR) и смешанной реальности (MR). Устройства, поддерживающие эти формы интерактивных приложений, можно назвать устройствами XR. Подробнее
См. в Словарь. Однако URP также может предоставлять более качественную графику для устройств среднего уровня, таких как консоли и ПК, иногда с меньшими затратами на производительность, чем встроенный конвейер рендеринга. Источники света отбираются для каждого объекта и позволяют вычислять освещение за один проход, что приводит к сокращению числа вызовов отрисовки по сравнению со встроенным конвейером рендеринга. Наконец, URP также предлагает модуль 2D-рендеринга, и планируется отложенный рендерер.
Вы можете использовать следующую диаграмму принятия решений, чтобы быстро определить, какой конвейер рендеринга следует выбрать на основе нескольких важных критериев.
Настройка
Вы можете загрузить последние версии HDRP и URP с помощью диспетчера пакетов Unity (Окно > Диспетчер пакетов). Самый простой способ начать работу с одним из этих SRP — создать новый проект с помощью Unity Hub и используйте один из соответствующих шаблонов.
Если вы хотите настроить свой проект для HDRP, убедитесь, что у вас установлен необходимый пакет. Затем используйте Мастер HD Render Pipeline (Окно > Render Pipeline > Мастер HD Render Pipeline), чтобы настроить проект в одном нажмите.
Расширяемость
Если у вас есть некоторые знания в области рендеринга, вы знакомы с C# и вам нужно полностью адаптировать модуль рендеринга для вашего проекта, вы можете поэкспериментировать с концепцией SRP, чтобы создать собственный конвейер рендеринга с поддержкой сценариев. Универсальный конвейер рендеринга особенно легко расширяется благодаря меньшей библиотеке шейдеров и возможности быстро внедрять, удалять и менять проходы рендеринга.
Совместимость
Перенос материалов вашего проекта из встроенного конвейера рендеринга в HDRP или URP в Unity относительно прост благодаря конвертеру материалов в один клик в разделе Редактировать > Конвейер рендеринга > Обновить…. Обратите внимание, что это необратимое действие. Настоятельно рекомендуется заранее создать резервную копию вашего проекта!
Тем не менее, пользовательские шейдеры придется портировать вручную, поэтому переход от встроенного конвейера рендеринга к HDRP или URP во время производства может занять много времени, в зависимости от количества пользовательских шейдеров, которые вам придется переписать.< /p>
Кроме того, поскольку HDRP физически более корректен, чем встроенный конвейер рендеринга, особенно в отношении затухания и распределения света, вы не должны ожидать, что ваш проект будет выглядеть идентично после переключения на HDRP.
Кроме того, HDRP и URP не являются кросс-совместимыми, поскольку они не используют одни и те же функции рендеринга. Перенос вашего проекта с HDRP на URP и наоборот возможен, но это не операция в один клик и потребует ручной доработки освещения, материалов и шейдеров!
Глобальные системы освещения
Если вы хотите включить непрямое освещение в свою сцену, вы должны использовать одну из двух систем глобального освещения Unity или создать его с помощью собственного решения для запекания. Две системы, доступные в Unity, в разделе «Окно» > «Рендеринг» > «Освещение»:
Глобальное освещение в реальном времени: эта система полностью полагается на EnlightenСистема освещения от Geomerics, используемая в Unity для создания карты освещения и глобального освещения в реальном времени. Подробнее
См. в Словарь, стороннем промежуточном программном обеспечении для освещения. Во время предварительных вычислений в Unity Enlighten проходит два длительных этапа, среди прочего: кластеризация и легкий транспорт. Первый заключается в упрощении сцены до набора участков поверхности, называемых кластерами, а второй — в вычислении видимости между этими кластерами. Эти предварительно вычисленные данные используются во время выполнения для интерактивного создания непрямого освещения. Сила Enlighten зависит от возможности редактировать освещение в реальном времени, поскольку предварительно вычисленные данные зависят от взаимосвязи между кластерами. Однако, как и в других традиционных методах картирования освещения, редактирование статической геометрии в вашей сцене вызовет новый предварительный расчет. HDRP и URP не поддерживают эту функцию в версии 2019.4, но поддерживает встроенный конвейер рендеринга.Запеченное глобальное освещение. При использовании этой системы Unity запекает данные освещения в текстуры, называемые картами освещения, а также в датчики освещения и датчики отражения. Существует два лайтмаппера: Enlighten Baked Global Illumination и Progressive Lightmapper (CPU или GPU). HDRP не поддерживает эту функцию, но поддерживает URP и встроенный конвейер рендеринга.
Progressive Lightmapper может расставить приоритеты при вычислении освещения для объектов, видимых камерой, и значительно ускорить итерацию освещения за счет увеличения общего времени запекания для всей сцены. Progressive Lightmapper использует ЦП для расчета непрямого освещения с помощью трассировки пути. Новый GPU Progressive Lightmapper в настоящее время находится на стадии предварительной версии и радикально сократит время запекания ваших сцен.
Поскольку и Enlighten, и Progressive Lightmapper используют разные методы для создания запеченного освещения, не следует ожидать, что результирующее освещение будет точно совпадать при их сравнении.
Посмотрите на диаграмму ниже, чтобы решить, какая система глобального освещения рекомендуется для вашего проекта, а также ее основные преимущества и недостатки.
Статический и динамический
Независимо от того, какую систему глобального освещения вы используете, Unity будет учитывать только объекты, помеченные как "Contribute GI" во время запекания/предварительного расчета освещения. Динамические (т. е. нестатические) объекты должны полагаться на световые датчики, размещенные по всей сцене, для получения непрямого освещения.
Поскольку запекание/предварительное вычисление освещения – относительно медленный процесс, тег "Contribute GI" следует помечать только для крупных и сложных объектов с отчетливыми вариациями освещения, такими как вогнутость и самозатенение. Меши меньшего размера и выпуклые, которые получают однородное освещение, не должны быть помечены как таковые, и поэтому они должны получать непрямое освещение от Light Probes, которые хранят более простую аппроксимацию освещения. Более крупные динамические объекты могут полагаться на LPPV, чтобы получать лучшее локализованное непрямое освещение. Ограничение количества объектов, помеченных как «Contribute GI» в вашей сцене, абсолютно необходимо для минимизации времени запекания при сохранении адекватного качества освещения. Вы можете узнать больше об этом процессе оптимизации и важности освещения Probe в этом руководство.
Предупреждение
Unity позволяет одновременно активировать системы Baked и Realtime GI, что дает вам доступ ко всем функциям освещения. Однако вы должны быть предупреждены, что включение обеих систем значительно увеличивает время выпечки и использование памяти во время выполнения, поскольку эти системы не полагаются на одни и те же наборы данных. Кроме того, интерактивное обновление непрямого освещения во время выполнения создаст дополнительную нагрузку на ЦП, и вы можете ожидать несоответствия при визуальном сравнении непрямого освещения, обеспечиваемого системами Baked и Realtime GI, поскольку они используют разные методы для имитации непрямого освещения. освещения и часто работают с существенно разными разрешениями.
Использование обеих систем GI следует ограничить высокопроизводительными платформами и/или проектами с жестко контролируемыми сценами и предсказуемыми затратами. Этот подход должен использоваться только опытными пользователями, которые очень хорошо разбираются во всех настройках освещения, поскольку управление обеими системами значительно усложняет работу. Следовательно, выбор одной из двух систем GI обычно является более безопасной стратегией для большинства проектов. Использование обеих систем редко рекомендуется!
Световые режимы
Свойство Mode компонента Light часто вызывает путаницу.
Существует три Режима освещенияСвойство Light, определяющее использование Свет. Можно установить режим реального времени, запеченный и смешанный. Подробнее
См. в Словаре, доступном в разделе Инспектор света:
- Запеченный: прямое и непрямое освещение от этих источников света запекается в карты освещения, что может занять много времени. Обработка этих источников света не требует времени выполнения, однако применение полученных карт освещения к сцене требует незначительных затрат.
- В реальном времени: прямое освещение и тени от этих источников света отображаются в реальном времени и поэтому не запекаются в картах освещения. Стоимость их выполнения может быть высокой в зависимости от сложности сцены, количества источников света, отбрасывающих тени, количества перекрывающихся источников света и т. д. Кроме того, если вы включите глобальное освещение в реальном времени, для обновления непрямого освещения потребуются дополнительные затраты производительности. во время выполнения.
- Смешанный. Это гибридный режим, в котором сочетаются запеченные функции и функции реального времени, такие как запеченное непрямое освещение и прямое освещение в реальном времени. Поведение всех смешанных источников света в вашей сцене и их влияние на производительность зависят от режима освещения для этой сцены.
Очень важно отметить, что режим источника света имеет значение только в том случае, если включена система Baked Global Illumination. Если вы не используете какую-либо систему GI или используете только систему GI в реальном времени, то все запеченные и смешанные источники света будут вести себя так, как если бы для их свойства Mode было установлено значение Realtime.
На следующей диаграмме схема принятия решений объединена со сравнительной таблицей. это может помочь вам решить, какой режим освещения подходит каждый раз, когда в сцену добавляется новый источник света.
Режимы освещения
Как вы можете видеть на предыдущей диаграмме, все смешанные источники света в сцене имеют определенные возможности запекания и реального времени, в зависимости от режима освещения, выбранного в окне освещения.
Вы можете выбрать один из трех режимов:
- Вычитание
- Запеченная косвенная реклама
- Теневая маска
Режим освещения Shadowmask имеет две настройки качества:
- Теневая маска
- Теневая маска расстояния
При использовании HDRP Shadowmask Lighting Mode, ShadowmaskТекстура, имеющая тот же UV-макет и разрешение, что и соответствующая карта освещения. Подробнее
Функция See in Словарь включена в активе HDRP, назначенном в настройках графики; затем его необходимо активировать специально для вашей камеры (камер) через Настройки фрейма.
Сравнительная таблица конвейера рендеринга
В следующей таблице представлен общий обзор функций, поддерживаемых каждым конвейером рендеринга в Unity 2019.3.
Сценарии освещения
Теперь, когда мы представили конвейеры рендеринга и основные функции освещения, давайте взглянем на несколько примеров проектов и посмотрим, какие настройки можно использовать для их освещения. Поскольку каждый проект уникален, вы можете использовать немного разные параметры в зависимости от ваших требований.
1. Прототип или быстрая предварительная визуализация
Если вы активно пользуетесь Asset Storeрастущей библиотекой бесплатных и коммерческих ресурсов, созданных Unity и членами сообщества . Предлагает широкий спектр ресурсов, от текстур, моделей и анимации до целых примеров проектов, руководств и расширений редактора. Подробнее
См. в Словарь, чтобы создать свой прототип, встроенный конвейер рендеринга может быть единственный подходящий конвейер рендеринга, так как большинство ресурсов, найденных в Магазине, не полностью совместимы с HDRP и URP; тем не менее, совместимость активов со временем улучшится. Если вы создаете все ресурсы с нуля и уже имеете четкое представление о требованиях вашего проекта, вы можете выбрать один из двух SRP (например, URP или HDRP) или даже создать собственный.
Если вы находитесь на ранней стадии (предварительного) производства и нуждаетесь в быстрой обработке и максимальной гибкости для освещения, вы можете предпочесть подход, полностью работающий в реальном времени, который не требует каких-либо предварительных вычислений, поэтому вы можете как в системах Baked, так и в системах Realtime GI. Чтобы смягчить недостаток надлежащего непрямого освещения, вы можете включить в Screen Space Ambient Occlusionметод, который приблизительно определяет, сколько окружающего света (света, а не с определенного направления) может попасть в точку на поверхности.
См. в Словарь: он может помочь заземлить объект в сцене, предлагая дешевые контактные тени в реальном времени.
2. Мобильная 3D-стратегия
Если вы ориентируетесь на мобильные устройства, URP может стать отличным кандидатом для обеспечения стабильной производительности вашей стратегической игры. Если конвейер рендеринга нужно настроить так, чтобы он лучше подходил для вашей игры, программист графики, вероятно, сочтет расширение URP простым. Если вы выберете URP и используете Baked Global Illumination, имейте в виду, что на данный момент смешанный режим освещения Shadowmask не поддерживается.
В качестве альтернативы, если вы решите придерживаться встроенного конвейера рендеринга, например, потому что вы полагаетесь на множество ресурсов из Asset Store, поддерживаются все режимы смешанного освещения. В этом случае подход с режимом освещения Shadowmask обеспечит запеченные тени, в то же время позволяя динамическим объектам отбрасывать тени в реальном времени. Если теневые маски слишком дороги для вашего проекта, вы можете вернуться к самому дешевому субтрактивному режиму. Наконец, прямой путь рендеринга, вероятно, является лучшим вариантом, если у вас очень мало источников света на уровне (уровнях) и если вы ориентируетесь на более старое оборудование.
3. Коридорный шутер ААА (фиксированное время суток)
Если вы стремитесь к качеству изображения AAA на ПК и консолях для своего линейного шутера от первого лица, HDRP должен быть предпочтительным конвейером рендеринга. Опять же, с помощью графических программистов можно было бы разработать собственный SRP.
Если ваши уровни содержат много источников света, отбрасывающих тени в реальном времени (например, разрушаемый световой реквизит и движущиеся источники света), то использование системы Baked GI с режимом Baked Indirect должно гарантировать, что вы получите великолепно выглядящее непрямое освещение от Mixed directional light и Запеченные источники светаКомпоненты источников света, для свойства Mode которых задано значение Baked. Unity предварительно рассчитывает освещение от Baked Lights перед выполнением и не включает их в какие-либо расчеты освещения во время выполнения. Подробнее
См. в Словарь в реквизитах статического освещения. Если ваши уровни состоят из большей части фиксированных источников света, отбрасывающих тени, то можно порекомендовать подход с теневыми масками, потому что HDRP предлагает отличный гибридный режим теневой маски, который дает вам больше контроля над сочетанием теней в реальном времени и запеченных теней.
Если вы также планируете поддерживать Nintendo Switch, рекомендуется использовать URP, чтобы вы могли поддерживать большинство игровых платформ на рынке и не проходить потенциально утомительный процесс переноса вашего проекта с HDRP на URP. или наоборот.
4. Королевская битва (смена дня и ночи)
Если вы планируете выпустить игру в жанре «королевская битва» для ПК и консолей с крупномасштабными средами и полностью динамическим освещением, вам следует выбрать HDRP или расширить его, чтобы адаптировать конвейер рендеринга к вашему проекту. Вы можете рассмотреть URP, если не стремитесь к визуальной точности AAA и ориентируетесь на мобильные устройства или системы с более низкими характеристиками.
Чтобы учесть смену дня и ночи, поскольку HDRP и URP не поддерживают систему глобального освещения в реальном времени (Enlighten) в версии 2019.4: цикл день-ночь должен обрабатываться с помощью непрямого запекания и пользовательского сценария. это, например, могло бы модулировать интенсивность солнца и непрямого света в течение дня.
Для этого конкретного сценария, если вы используете встроенный конвейер рендеринга, не рекомендуется активировать как системы Realtime GI, так и запеченные системы GI, так как это может привести к накладным расходам с точки зрения производительности и управления сценой для огромного уровня. критический. Еще одним аргументом против использования обеих систем GI является непредсказуемый характер таких крупномасштабных многопользовательских игр: например, оценка производительности сложнее, чем на линейном уровне с большим количеством сценариев.
Заключительные слова
За последние несколько лет ландшафт рендеринга в Unity радикально изменился благодаря внедрению Scriptable Render Pipelines. Поэтому следить за всеми этими изменениями и их последствиями для конвейера освещения может быть утомительно.
Надеемся, что это руководство и его многочисленные иллюстрации помогли вам лучше понять возможности каждого конвейера рендеринга, чтобы вы могли уверенно начинать свои проекты в Unity с соответствующими настройками рендеринга и освещения!
Вы можете узнать больше об освещении в Unity и конвейерах рендеринга на следующих страницах: