Обновление до версии 7.2.0 из Universal Render Pipeline
На этой странице вы найдете информацию о том, как обновить старую версию Universal Render Pipeline (URP) до текущей версии.
Создание Project для консолей
Чтобы построить Project для консоли, вам нужно установить дополнительный пакет для каждой платформы, которую вы хотите поддерживать.
Требуется текстура глубины
В предыдущих версиях URP, если была включена последующая обработка, то конвейер всегда требовал глубину. Мы улучшили интеграцию последующей обработки, чтобы требовать глубину из конвейера только при включении эффектов глубины поля, Motion Blur или SMAA. Это улучшает производительность во многих случаях.
Поскольку камеры, использующие пост-обработку, больше не требуют глубины по умолчанию, теперь вы должны вручную указать, что камеры требуют глубины, если вы используете ее для других эффектов, таких как мягкие частицы.
Чтобы все камеры требовали глубину, включите опцию Depth Texture в Pipeline Asset. Чтобы отдельные Camera требовали глубину, установите опцию Depth Texture на On в Camera Inspector.
Выборка теней из главного света
В предыдущих версиях URP, если каскады теней были включены для главного Света, тени были разрешены в проходе экранного пространства. Конвейер теперь всегда разрешает тени при отображении непрозрачных или прозрачных объектов. Это позволяет последовательность и решает многие проблемы, касающиеся теней.
Если у вас есть пользовательские HLSL шейдеры и образцы _ScreenSpaceShadowmapTexture текстуры, вы должны обновить их до образцов теней, используя вместо этого функцию GetMainLight.
Например:
float4 shadowCoord = TransformWorldToShadowCoord(positionWorldSpace);
Light mainLight = GetMainLight(inputData.shadowCoord);
// now you can use shadow to apply realtime occlusion
half shadow = mainLight.shadowAttenuation;
Вы также должны определить следующее в вашем файле .shader, чтобы убедиться, что ваш пользовательский шейдер может правильно получать тени:
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS_CASCADE
Прозрачные получающие тени
Прозрачные объекты теперь могут получать тени при использовании каскадов теней. Вы также можете отключить получение теней для прозрачных объектов для повышения производительности. Для этого отключите Transparent Receive Shadows в ассете Forward Renderer.