Search Issue Tracker
Fixed
Fixed in 2023.3.0b7
Votes
0
Found in
2023.3.0a7
Issue ID
UUM-49317
Regression
No
"maximum ps_4_0 sampler register index (16) exceeded" error is thrown on build when enabling LOD Cross-Fade
How to reproduce:
1. Open the attached project “Test”
2. Build And Run the project
Expected result: The project is successfully built
Actual result: The project building fails with the "maximum ps_4_0 sampler register index (16) exceeded" error
Reproducible with: 2022.3.7f1
Couldn’t test with: 2021.3.29f1, 2023.1.8f1, 2023.2.0b4 (The project becomes broken after changing the version)
Reproducible on: Windows 11 Pro
Not reproducible on: No other environment tested
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Packman: "My Assets" filters section doesn't rescale on filter sections collapse
- "DrawDepthNormalPrepass" exceptions are thrown in Editor when Ctrl key is held with specific renderer settings
- Script file name changes do not display in Editor when Compiler errors are present
- Sprites are not rotating with bones when the Sprite type is Unlit
- Crash on TransferField_NonArray<YAMLRead,Converter_String> when opening a specific project
Resolution Note (fix version 2023.3.0b7):
This error is a hard limit from the graphics API and cannot be fixed or changed. Direct3D 11 supports only 16 active texture samplers in one shader. Unity creates a sampler per texture due to historical reasons. The solution is to reduce the number of textures used by the shader. Alternatively the samplers can be shared using hardcoded inline samplers (excluding OpenGL).
See: https://docs.unity3d.com/2023.3/Documentation/Manual/SL-SamplerStates.html
The bug is marked fixed. The fix turns several internal samplers into shared inline samplers. While this won't fix the underlying issue (limit of the graphics API and/or hardware), it should reduce the likelihood of hitting this limit.
If you hit this limit again, try to reduce the enabled textures or features in the (Lit) shader to workaround the issue.