Search Issue Tracker
By Design
By Design in 6000.2.X
Votes
1
Found in
2022.3.63f1
6000.0.51f1
6000.1.8f1
6000.2.0b6
Issue ID
UUM-109311
Regression
No
Wrong opacity of a transparent Material when Render Queue is set lower than 2501
Reproduction steps:
1. Open the attached “DepthShadow6000“ project
2. Open the “DepthShadowDemo“ Scene
3. In the Game View, observe the “Plane“ GameObject
Expected result: The “Plane” GameObject is transparent
Actual result: The GameObject is opaque
Reproducible with: 2022.3.63f1, 6000.0.51f1, 6000.1.8f1, 6000.2.0b6
Reproducible on: macOS Sequoia 15.5 (M1 Max), Windows 11
Not reproducible on: No other environments tested
Workaround: In the “DecalCatcher” Material options, set the Render Queue to 2501 or more
Comments (1)
-
DevDunk
Jul 01, 2025 07:34
This is required to be fixed for a new Unity Asset
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
- Build fails when building a project containing an 18+ dimension array with IL2CPP
- [Android][Sentis] Human poses are not detected when using the BlazePose model
- Sprite Editor Outline Tool Overlay is not displayed when no Sprite is selected
- “No method with RuntimeInitializeOnLoadMethod attribute” warning from ReadmeEditor.cs is thrown after installing Project Auditor Rules
- Projection matrix is altered when using RasterCommandBuffer.ClearRenderTarget on DX12 and Metal
Resolution Note:
Thank you for reporting this issue.
After investigating, we've determined this is working as designed. The render queue value determines whether Unity treats an object as opaque or transparent:
- Render queue [0–2500]: treated as opaque (sorted front-to-back)
- Render queue [2501–5000]: treated as transparent/semitransparent (sorted back-to-front)
The boundary is at RenderQueue.GeometryLast (2500), which is documented as "the last render queue that is treated as opaque" (see RenderQueue.GeometryLast). When you set a transparent material's render queue to 2500 or lower, the engine correctly routes it through the opaque rendering path, which is why transparency stops working.
Recommendation: Use a render queue value of 3000 (RenderQueue.Transparent) or higher for transparent materials. If you need your transparent object to render before other transparent objects (e.g., for decal ordering), use a value in the 2501–2999 range rather than going below 2501.
We're closing this as By Design. Thank you for taking the time to report this. We appreciate the detailed repro steps.
Resolution Note (6000.2.X):
Thank you for reporting this issue.
After investigating, we've determined this is working as designed. The render queue value determines whether Unity treats an object as opaque or transparent:
- Render queue [0–2500]: treated as opaque (sorted front-to-back)
- Render queue [2501–5000]: treated as transparent/semitransparent (sorted back-to-front)
The boundary is at RenderQueue.GeometryLast (2500), which is documented as "the last render queue that is treated as opaque" (see RenderQueue.GeometryLast). When you set a transparent material's render queue to 2500 or lower, the engine correctly routes it through the opaque rendering path, which is why transparency stops working.
Recommendation: Use a render queue value of 3000 (RenderQueue.Transparent) or higher for transparent materials. If you need your transparent object to render before other transparent objects (e.g., for decal ordering), use a value in the 2501–2999 range rather than going below 2501.
We're closing this as By Design. Thank you for taking the time to report this. We appreciate the detailed repro steps.