Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updated the feature comparison table. Added a clarification about upgrading shaders from built-in to URP. #2793

Merged
merged 1 commit into from
Dec 1, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ This table provides an overview of the current features supported in the Univers
**Note:** If a feature is marked __In research__, the URP team is still researching how and when to implement the feature. If a feature is marked as __Not supported__, it's because Unity is not planning to support it in any release.


| Feature | Built-in Render Pipeline<br/>Unity 2019.4 | Universal Render Pipeline |
| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
| Feature | Built-in Render Pipeline<br/>Unity 2019.x. | Universal Render Pipeline |
| --- | --- | --- |
| ***Camera*** | | |
| HDR | Yes | Yes |
| MSAA | Yes | Yes |
Expand All @@ -23,7 +23,7 @@ This table provides an overview of the current features supported in the Univers
| Static Batching (By Shader) | Not supported | Yes |
| Static Batching (By Material) | Yes | Yes |
| Dynamic Batching | Yes | Yes |
| Dynamic Batching (Shadows) | Yes | In research |
| Dynamic Batching (Shadows) | Yes | Not supported |
| GPU Instancing | Yes | Yes |
| ***Color Space*** | | |
| Linear | Yes | Yes |
Expand All @@ -40,8 +40,8 @@ This table provides an overview of the current features supported in the Univers
| ***Realtime Shadows*** | | |
| *Light Types*<br/>Directional<br/>Spot<br/>Point<br/>Area | <br/>Yes<br/>Yes<br/>Yes<br/>Not supported | <br/>Yes - only 1<br/>Yes<br/>In research<br/>Not supported |
| *Shadow Projection*<br/>Stable Fit<br/>Close Fit | <br/>Yes<br/>Yes | <br/>Yes<br>In research |
| *Shadow Cascades*<br/>Number of Cascades<br/>Control by Percentage<br/>Control by Distance | <br/>1, 2 or 4<br/>Yes<br/>Not supported | <br/>1, 2 or 4<br/>Yes<br/>In research |
| *Shadow Resolve Type*<br/>Lighting Pass<br/>Screen Space Pass | <br/>Yes<br/>Yes | <br/>Yes<br/>Yes |
| *Shadow Cascades*<br/>Number of Cascades<br/>Control by Percentage<br/>Control by Distance | <br/>1, 2 or 4<br/>Yes<br/>Not supported | <br/>1, 2 or 4<br/>Yes<br/>Not supported |
| *Shadow Resolve Type*<br/>Lighting Pass<br/>Screen Space Pass | <br/>Yes<br/>Yes | <br/>Yes<br/>No |
| Shadow Bias | Constant clip space offset + normal bias | Offsets shadowmap texels in the light direction + normal bias|
| ***Lightmapping*** | | |
| Enlighten | Yes | Not supported |
Expand All @@ -52,8 +52,8 @@ This table provides an overview of the current features supported in the Univers
| ***Mixed Lighting Mode*** | | |
| Subtractive | Yes | Yes |
| Baked Indirect | Yes | Yes |
| Shadow Mask | Yes | In research |
| Distance Shadow Mask | Yes | In research |
| Shadow Mask | Yes | No |
| Distance Shadow Mask | Yes | No |
| ***Light Probes*** | | |
| Blending | Yes | Yes |
| Proxy Volume (LPPV) | Yes | Not supported |
Expand Down Expand Up @@ -91,7 +91,7 @@ This table provides an overview of the current features supported in the Univers
| Camera-relative Rendering | Not supported | In research |
| *Built-in Lit Uber Shader*<br/>Metallic Workflow<br/>Specular Workflow | Standard Shader<br/>Yes<br/>Yes | [Lit Shader](lit-shader.md)<br/>Yes<br/>Yes |
| *Surface Type and Blend Mode*<br/>Opaque<br/>Faded (Alpha Blend)<br/>Transparent<br/>Cutout<br/>Additive<br/>Multiply | <br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Not supported<br/>Not supported | <br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes |
| *Surface Inputs*<br/>Albedo (Base Map)<br/>Specular<br/>Metallic<br/>Smoothness<br/>Ambient Occlusion<br/>Normal Map<br/>Detail Map<br/>Detail Normal Map<br/>Heightmap | <br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes | <br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Not supported<br/>Not supported<br/>Not supported |
| *Surface Inputs*<br/>Albedo (Base Map)<br/>Specular<br/>Metallic<br/>Smoothness<br/>Ambient Occlusion<br/>Normal Map<br/>Detail Map<br/>Detail Normal Map<br/>Heightmap | <br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes | <br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>No<br/>No<br/>No |
| Light Cookies | Yes | In research |
| Parallax Mapping | Yes | Not supported |
| Light Distance Fade | Not supported | In research |
Expand All @@ -114,7 +114,7 @@ This table provides an overview of the current features supported in the Univers
| OnWillRenderObject | Yes | Yes |
| OnBecameVisible | Yes | Yes |
| OnBecameInvisible | Yes | Yes |
| Camera Replacement Material | Not supported | In research |
| Camera Replacement Material | Not supported | Yes, with a custom Pass |
| RenderPipeline.BeginFrameRendering | Not supported | Yes |
| RenderPipeline.EndFrameRendering | Not supported | Yes |
| RenderPipeline.BeginCameraRendering | Not supported | Yes |
Expand Down Expand Up @@ -162,8 +162,8 @@ This table provides an overview of the current features supported in the Univers
| Multipass | Yes | Yes |
| Single Pass | Yes | Yes |
| Single Pass Instanced | Yes | Yes |
| *Post-processing*<br>Oculus Rift<br/>Oculus Quest</br>Oculus Go<br/>Gear VR<br/>PSVR</br>HoloLens<br/>WMR<br/>Magic Leap One<br/>OpenVR| <br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes | <br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>No |
| *Post-processing*<br>Oculus Rift<br/>Oculus Quest</br>PSVR</br>HoloLens<br/>WMR<br/>Magic Leap One | <br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes | <br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes<br/>Yes |
| ***AR*** | | |
| AR Foundation | No | Yes |
| AR Foundation | Yes | Yes |
| ***Debug*** | | |
| Scene view modes | Yes | In research |
Original file line number Diff line number Diff line change
@@ -1,15 +1,19 @@
# Upgrading your Shaders

If your Project uses shaders from the built-in render pipeline, and you want to [switch your Project to use the Universal Render Pipeline instead](InstallURPIntoAProject.md), you must convert those Shaders to the URP Shaders. This is because built-in Lit shaders are not compatible with URP Shaders. For an overview of the mapping between built-in shaders and URP Shaders, see [Shader mappings](#shader-mappings).
Lit shaders from the Built-in Render Pipeline are not compatible with URP shaders. When migrating a project from the Built-in Render Pipeline to URP, it's necessary to convert the shaders.

To upgrade built-in Shaders:
Unity provides the option to convert the built-in (non-custom) Built-in Render Pipeline shaders to URP-compatible shaders. If your project uses custom shaders, you need to convert them manually yo URP-compatible shaders. For information on writing URP-compatible shaders, see [Writing custom shaders](writing-custom-shaders-urp.md).

To convert the built-in (non-custom) Built-in Render Pipeline shaders:

1. Open your Project in Unity, and go to __Edit__ > __Render Pipeline__ > **Universal Render Pipeline**.
2. According to your needs, select either __Upgrade Project Materials to URP Materials__ or __Upgrade Selected Materials to URP Materials__.

**Note:** These changes cannot be undone. Backup your Project before you upgrade it.
For an overview of the mapping between Built-in Render Pipeline shaders and URP shaders, see [Shader mappings](#shader-mappings).

> **Note:** These changes cannot be undone. Backup your project before you upgrade it.

**Tip:** If the Preview thumbnails in Project View are incorrect after you've upgraded, try right-clicking anywhere in the Project View window and selecting __Reimport All__.
> **Tip:** If the Preview thumbnails in Project View are incorrect after you've upgraded, try right-clicking anywhere in the Project View window and selecting __Reimport All__.

For [SpeedTree](https://docs.unity3d.com/Manual/SpeedTree.html) Shaders, Unity does not re-generate Materials when you re-import them, unless you click the **Generate Materials** or **Apply & Generate Materials** button.

Expand Down