diff --git a/com.unity.render-pipelines.universal/Documentation~/TableOfContents.md b/com.unity.render-pipelines.universal/Documentation~/TableOfContents.md index 17140accfe2..acb5b60462f 100644 --- a/com.unity.render-pipelines.universal/Documentation~/TableOfContents.md +++ b/com.unity.render-pipelines.universal/Documentation~/TableOfContents.md @@ -14,6 +14,7 @@ * [Render Objects Renderer Feature](renderer-features/how-to-custom-effect-render-objects.md) * [Ambient Occlusion](post-processing-ssao.md) * [Upgrade guides](upgrade-guides.md) + * [Upgrading to URP 10.7.x](upgrade-guide-10-7-x.md) * [Upgrading to URP 10.6.x](upgrade-guide-10-6-x.md) * [Upgrading to URP 10.5.x](upgrade-guide-10-5-x.md) * [Upgrading to URP 10.4.x](upgrade-guide-10-4-x.md) diff --git a/com.unity.render-pipelines.universal/Documentation~/requirements.md b/com.unity.render-pipelines.universal/Documentation~/requirements.md index 19159ef0c04..190754b708d 100644 --- a/com.unity.render-pipelines.universal/Documentation~/requirements.md +++ b/com.unity.render-pipelines.universal/Documentation~/requirements.md @@ -8,6 +8,7 @@ The following table shows the compatibility of URP package versions with differe | Package version | Minimum Unity version | Maximum Unity version | |-----------------|-----------------------|-----------------------| +| 10.7.x | 2020.3.13f1 | 2020.3.x | | 10.6.x | 2020.3.4f1 | 2020.3.x | | 10.5.x | 2020.3.4f1 | 2020.3.x | | 10.4.x | 2020.2.7f1 | 2020.3.x | diff --git a/com.unity.render-pipelines.universal/Documentation~/upgrade-guide-10-7-x.md b/com.unity.render-pipelines.universal/Documentation~/upgrade-guide-10-7-x.md new file mode 100644 index 00000000000..478e5fa539a --- /dev/null +++ b/com.unity.render-pipelines.universal/Documentation~/upgrade-guide-10-7-x.md @@ -0,0 +1,58 @@ +# Upgrading to version 10.7.x of the Universal Render Pipeline + +This page describes how to upgrade from an older version of the Universal Render Pipeline (URP) to version 10.7.x. + +## Upgrading from URP 10.0.x–10.6.x + +1. URP 10.7.x does not have breaking changes compared with URP 10.0.x–10.6.x. To upgrade URP to version 10.7.x, install the new version of the package. + +## Upgrading from URP 7.2.x and later releases + +1. URP 10.x.x does not support the package Post-Processing Stack v2. If your Project uses the package Post-Processing Stack v2, migrate the effects that use that package first. + +### DepthNormals Pass + +Starting from version 10.0.x, URP can generate a normal texture called `_CameraNormalsTexture`. To render to this texture in your custom shader, add a Pass with the name `DepthNormals`. For example, see the implementation in `Lit.shader`. + +### Screen Space Ambient Occlusion (SSAO) + +URP 10.0.x implements the Screen Space Ambient Occlusion (SSAO) effect. + +If you intend to use the SSAO effect with your custom shaders, consider the following entities related to SSAO: + +* The `_SCREEN_SPACE_OCCLUSION` keyword. + +* `Input.hlsl` contains the new declaration `float2 normalizedScreenSpaceUV` in the `InputData` struct. + +* `Lighting.hlsl` contains the `AmbientOcclusionFactor` struct with the variables for calculating indirect and direct occlusion: + + ```c++ + struct AmbientOcclusionFactor + { + half indirectAmbientOcclusion; + half directAmbientOcclusion; + }; + ``` + +* `Lighting.hlsl` contains the following function for sampling the SSAO texture: + + ```c++ + half SampleAmbientOcclusion(float2 normalizedScreenSpaceUV) + ``` + +* `Lighting.hlsl` contains the following function: + + ```c++ + AmbientOcclusionFactor GetScreenSpaceAmbientOcclusion(float2 + normalizedScreenSpaceUV) + ``` + +To support SSAO in custom shader, add the `DepthNormals` Pass and the `_SCREEN_SPACE_OCCLUSION` keyword the the shader. For example, see `Lit.shader`. + +If your custom shader implements custom lighting functions, use the function `GetScreenSpaceAmbientOcclusion(float2 normalizedScreenSpaceUV)` to get the `AmbientOcclusionFactor` value for your lighting calculations. + +## Upgrading from URP 7.0.x-7.1.x + +1. Upgrade to URP 7.2.0 first. Refer to [Upgrading to version 7.2.0 of the Universal Render Pipeline](upgrade-guide-7-2-0). + +2. URP 8.x.x does not support the package Post-Processing Stack v2. If your Project uses the package Post-Processing Stack v2, migrate the effects that use that package first. diff --git a/com.unity.render-pipelines.universal/Documentation~/upgrade-guides.md b/com.unity.render-pipelines.universal/Documentation~/upgrade-guides.md index 32bad2147e2..d4e5b9a4f61 100644 --- a/com.unity.render-pipelines.universal/Documentation~/upgrade-guides.md +++ b/com.unity.render-pipelines.universal/Documentation~/upgrade-guides.md @@ -2,6 +2,7 @@ This section contains information about upgrading from an older version of the Universal Render Pipeline (URP) to a more recent version, and about upgrading from the Lightweight Render Pipeline (LWRP) to URP. +* [Upgrading to URP 10.7.x](upgrade-guide-10-7-x.md) * [Upgrading to URP 10.6.x](upgrade-guide-10-6-x.md) * [Upgrading to URP 10.5.x](upgrade-guide-10-5-x.md) * [Upgrading to URP 10.4.x](upgrade-guide-10-4-x.md)