Sometimes, you want the same shaderA program that runs on the GPU. More info
See in Glossary to do different things under different circumstances. When this happens, you use conditionals to define different behavior for different hardware.
This section of the manual contains information about how shader variants and keywords work, and when and how to use them.
Page | Description |
---|---|
Conditionals in shaders | An introduction to conditionals in shaders, including information on the different types of conditional, and when to use which one. |
Branching in shaders | An introduction to static and dynamic branching in shaders. |
Shader variantsA verion of a shader program that Unity generates according to a specific combination of shader keywords and their status. A Shader object can contain multiple shader variants. More info See in Glossary |
An introduction to shader variants, and information on how to understand and control how many shader variants Unity compiles. |
Check how many shader variants you have | Using logging and profiling tools to check how many shader variants Unity compiles, and identify ways you can remove (strip) variants. |
Shader keywords | An introduction to shader keywords, and information on how to use them. |
Using shader keywords with C# scripts | Working with shader keywords in C# scriptsA piece of code that allows you to create your own Components, trigger game events, modify Component properties over time and respond to user input in any way you like. More info See in Glossary. |
Using shader keywords with the material Inspector | Working with shader keywords in the Unity Editor, using the material InspectorA Unity window that displays information about the currently selected GameObject, asset or project settings, allowing you to inspect and edit the values. More info See in Glossary. |
Shader variant stripping | Preventing shader variants from being compiled to reduce build times, file size, shader loading times and runtime memory usage. |
Shader variant collections | An introduction to shader variant collections, and information on how to use them. |