Now available: A free new e-book for experienced Unity developers and technical artists to take on the Universal Render Pipeline (URP)
By supporting over 20 platforms, we want you to reach as many players as possible – and with the Built-in Render Pipeline, we strive to provide a strong mix of graphics features across different hardware. However, certain limitations have become apparent over time, as the number of platforms supported by Unity has grown significantly.
Unity’s two Scriptable Render Pipelines (SRPs), the High Definition Render Pipeline (HDRP) and the Universal Render Pipeline (URP) are robust, long-term solutions for meeting the ever-evolving rendering requirements for multiplatform development. With these SRPs, you can efficiently customize the culling of objects, their drawing, and the post-processing of the frame without having to use low-level programming languages like C++. They also support authoring tools like VFX Graph and Shader Graph.
The new e-book, Introduction to the Universal Render Pipeline for advanced Unity creators, gathers over 125 pages of deep foundational knowledge on URP settings and features, so you can learn how to move your projects from the Built-in Render Pipeline to URP. The guide is intended to supplement Unity documentation and can be used alongside other educational resources. It was created by highly experienced internal and external Unity developers and technical artists, and reflects the latest features available in Unity 2021 LTS.
Here’s a recap of the key advantages URP offers:
Whether you read it front to back or focus on specific sections that interest you, this URP guide provides immense value to everyone, including new users. Let’s look at just a few highlights from the e-book.
Be sure to read to the end of this post, where you’ll also find links to a series of video tutorials made to complement the guide.
If you switch an existing project from the Built-in Render Pipeline to URP, a set of URP Assets are created that attempt to match the Built-in Render Pipeline Quality options. In some cases, the URP settings offer higher fidelity when compared to the Built-In Render Pipeline.
While this might mislead you to think that the URP is not as performant, understanding how the settings work will help you unlock performance and visual gains with Built-in as well as URP. The guide provides a thorough explanation of how to convert your project, including detailed tables that compare Low and High settings between the two pipelines, plus a third table that shows you where to find each Quality setting for URP.
If you convert a project from the Built-in Render Pipeline to URP, you might notice differences in the lighting. This is because the Built-in Render Pipeline uses a gamma lighting model by default and URP uses a linear model. There are also differences in where to find the Settings controls in-Editor, and how to handle the challenge of widely differing hardware specs.
This section of the e-book delves into all aspects of setting up lighting in URP, including tips to achieve balance between graphic fidelity and performance, and describes the differences between the workflows of the two rendering pipelines. Areas covered include:
Porting your shaders to URP doesn’t need to be a daunting task. Readers will get plenty of information on how to port both basic and advanced shaders to URP from the Built-in Render Pipeline, as well as detailed mapping between the Built-in and URP shaders. Learn how to convert an existing custom shader to work with URP and write a custom shader in code without using Shader Graph.
The tables included in the Shader section show samples of available HLSL Shader functions, macros, and so on. In each case, a link is provided to the relevant #include containing many other useful functions.
This part of the e-book takes you through step-by-step guidance for setting up the URP framework.
Note that the Built-in Post-Processing Stack v2 package is not compatible with URP. URP does not require an additional package for post-processing effects. It uses a Volume framework. When you add Volumes to a scene, you can choose which post-processing effects apply to the Volume.
A Volume can be Global or Local. If Global, the Volume affects the Camera everywhere in the scene. With the Mode set to Local, the Volume affects the Camera if it’s within the bounds of the Collider.
These video tutorials will take you through the same instructions as in the e-book, with a Unity project for you to follow, one step at a time.
In Converting custom shaders to URP, you’ll explore ways to perform on legacy shaders as part of the upgrading process. See how to convert a custom unlit Built-in shader to URP within an actual Unity project.
In Three ways to use URP Renderer Features, we show you three practical exercises using Renderer Features in the URP: how to create a custom post-processing effect, stencil effect, and characters occluded by their environment.
Efficient multiplatform deployment is a key factor in the success of many games. Our aim with URP architecture is to provide deep flexibility and customization with as few steps and little complexity as possible and enhanced performance across the gamut of supported and future platforms.
We hope you find the e-book helpful! Download it, give it a read, and let us know your thoughts on the forums.