Search Issue Tracker
By Design
Votes
0
Found in [Package]
13.1.5
Issue ID
1396814
Regression
No
[HDRP] Visual rendering glitch when using some Passes in the Custom Pass Volume Component
How to reproduce:
1. Open the user's attached "hdrp camera error" project
2. Open the "SampleScene" Scene
3. Select the "Custom Pass" GameObject in the Hierarchy
4. Set the "Custom Pass Volume (Component) -> Custom Passes -> Overrides -> Pass Name" to "ScenePickingPass" in the Inspector
Expected result: The GameObjects are rendered without any glitches
Actual result: The appearance of the GameObjects in the Scene is glitch-rendered
Reproducible with: 7.7.1 (2019.4.35f1), 10.8.1 (2020.3.27f1), 12.1.4 (2021.2.9f1), 13.1.2 - 13.1.5 (2022.1.0b5, 2022.2.0a2)
Note: The issue is reproducible when the Pass is "ScenePickingPass", "SceneSelectionPass", "META", "MotionVectors", "TransparentBackface"
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
- "Shader warning in 'Hidden/Light2D': implicit truncation of vector type" is thrown when building Universal 2D template
- AI Assistant breaks compilation of packages using System.Runtime.CompilerServices.Unsafe via auto-referencing
- Unity Hub checks the "Documentation" module by default on the 6.4 and 6.5 streams despite that it was unchecked with the previous installs
- Shortcut that toggles between Dopesheet and Curves Views in the Animation Window's Timeline is mislabed
- Property List Items Overlap onto the Property List's top edge when scrolling through a long Property List
Resolution Note:
Hello,
The behavior you're seeing is completely normal. The DrawRenderers custom pass renders objects in the scene and allows you to do that with custom material and a pass. In HDRP we use material passes to output material information at different places in our pipeline thus unless you set up the custom pass to correctly use this specific information, the result will be undefined.
This is what happens when you try to render the "ScenePickingPass, SceneSelectionPass or META" passes directly in the color buffer. These passes are not designed to be used like that so the result is undefined. To use them properly, they have to be rendered in a separate buffer so their information can be used.
We want to keep this flexibility even if you can end up in a situation that doesn't make sense because restraining the system would hurt its versatility.
If you want examples on how to use custom passes, I recommend checking this repository: https://github.com/alelievr/HDRP-custom-passes.
Also note that in Unity when you change settings related to a shader it goes completely cyan, this indicates that the shader is compiling asynchronously and it's perfectly normal.