Important: The Built-In Render Pipeline is deprecated and will be made obsolete in a future release.
It remains supported, including bug fixes and maintenance, through the full Unity 6.7 LTS lifecycle.
For more information on migration, refer to Migrating from the Built-In Render Pipeline to the Universal Render Pipeline and Render pipeline feature comparison.
Resources and techniques for writing Surface Shaders in the Built-In Render Pipeline, which are streamlined shaders that interact with lighting.
| Page | Description |
|---|---|
| Introduction to Surface Shaders | Learn about how Surface Shaders let you write shaders in a streamlined way. |
| Surface Shader output structures | Understand the structures Surface Shaders uses for input data, for example albedo color and surface normals. |
| Surface Shaders and rendering paths | Understand how the rendering path affects how Unity applies lighting, and which passes Unity uses. |
| Create a Surface Shader | Create a Surface Shader using the #pragma surface directive. |
| Set the lighting model in a Surface Shader | Set the lighting to a built-in model, or define a custom lighting model. |
| Optimize Surface Shaders | Make Surface Shaders run faster or reduce their file size. |
| Surface Shader examples | Examples of Surface Shaders in the Built-In Render Pipeline. |
| Surface Shader language reference | Find the directives and input structures you need to write a Surface Shader in the Built-In Render Pipeline. |