Обновление до версии 10.0.x из Universal Render Pipeline
На этой странице описано, как обновить старую версию Universal Render Pipeline (URP) до версии 10.0.x.
Обновление с URP 7.2.x и более поздних выпусков
- URP 10.x.x не поддерживает пакет Post-Processing Stack v2. Если ваш Project использует пакет Post-Processing Stack v2, сначала перенесите эффекты, использующие этот пакет.
DepthNormals Пропуск
Начиная с версии 10.0.x, URP может генерировать обычную текстуру под названием _CameraNormalsTexture. Чтобы отобразить эту текстуру в вашем пользовательском шейдере, добавьте Pass с именем DepthNormals. Для примера, проверьте реализацию в Lit.shader.
Экран пространства окружающей окклюзии (SSAO)
URP 10.0.x реализует эффект окклюзии окружающего пространства экрана (SSAO).
Если вы собираетесь использовать эффект SSAO с вашими пользовательскими шейдерами, рассмотрите следующие объекты, связанные с SSAO:
Ключевое слово
_SCREEN_SPACE_OCCLUSION.Input.hlslсодержит новую декларациюfloat2 normalizedScreenSpaceUVв 2000 годуInputDatastruct.-
Lighting.hlslсодержитAmbientOcclusionFactorструктура с переменными для расчёта непрямого и прямого затенения:struct AmbientOcclusionFactor { half indirectAmbientOcclusion; half directAmbientOcclusion; }; -
Lighting.hlslсодержит следующую функцию для семплирования текстуры SSAO:half SampleAmbientOcclusion(float2 normalizedScreenSpaceUV) -
Lighting.hlslсодержит следующую функцию:AmbientOcclusionFactor GetScreenSpaceAmbientOcclusion(float2 normalizedScreenSpaceUV)
Чтобы поддержать SSAO в пользовательском шейдере, добавьте DepthNormals Pass и _SCREEN_SPACE_OCCLUSION ключевое слово в шейдер. Например, проверьте Lit.shader.
Если ваш пользовательский шейдер реализует пользовательские функции освещения, используйте функцию GetScreenSpaceAmbientOcclusion(float2 normalizedScreenSpaceUV) для получения значения AmbientOcclusionFactor для расчетов освещения.
Обновление с URP 7.0.x–7.1.x
Сначала обновите до URP 7.2.0. См. Обновление до версии 7.2.0 Universal Render Pipeline.
URP 8.x.x не поддерживает пакет Post-Processing Stack v2. Если ваш Project использует пакет Post-Processing Stack v2, сначала перенесите эффекты, использующие этот пакет.