Prevent Unity stripping GPU instancing shaders in the Built-In Render Pipeline
Disable stripping of instanced shaders in the Project Settings window.
Read time 1 minuteLast updated 15 days ago
Unity generates Surface shaders with instancing variants by default, unless you specify in the directive. Unity ignores uses of #pragma multi_compile_instancing in a surface shader.
noinstancing#pragmaUnity’s Standard and StandardSpecular shaders have instancing support by default, but with no per-instance properties other than the transform.
If your scene contains no GameObjects with GPU instancing enabled, then Unity strips instancing shader variants. To override the stripping behaviour:
- Open Project Settings (menu: Edit > ).Project Settings
?
- Go to Graphics.
- In the Shader Stripping section, set Instancing Variants to Keep All.