Search Issue Tracker
By Design
Votes
0
Found in [Package]
Master 2020-07-17
Issue ID
1263882
Regression
No
[HDRP] Refractive material rendering issues when used with reflection probles (box shaped glitch)
When a refractive material is used on a sphere, box shape artefacts are visible. The issue occurs only when the sphere is being influenced by a reflection probe.
Reproduction steps:
1. In attached project, open the samplescene and notice box like shapes on the sphere as in the video. Happens both in sphere and box refraction modes.
Found using:
2020.2.0a18 with Master SRP branch (10.0) also in 8.2.0
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
- "EndLayoutGroup: BeginLayoutGroup must be called first." error is thrown after building the project when Scripting Backend and Api Compatibility Level fields are changed
- GameObjects with Local Volumetric Fog Component and Fog Volume Shader Graph produce numerous render errors when there are more than 300 of them generated in the Scene
- Adaptive Probe Volumes system places some Light Probes in incorrect positions when Generating Lighting
- Constant buffer is not properly updated for the depth pass when rendering a custom mesh on DirectX12
- AfterRendering Event of the URP RendererFeatures renders with inverted Y axis
Resolution Note:
Unfortunately, the issue comes from a problem with the underlying design of our lighting cluster which is not something that we can really fix.
Currently, refraction works by using reflection probe proxies to apply parallax correction. Since we don't have an explicit probe linked to each object (due to lighting being done in screen space) we choose the first probe's proxy in the pixel's current lighting cluster.
The root of the problem here is that, for optimization purpose, the repartition of the clusters along the depth of the camera depends on the max depth of each tile (the further away is the background, the bigger the clusters). This will result in different probe list per cluster which is exactly what we see here. The blocky artefacts are actually clusters with different probe list and because of that, the proxy used for refraction is different which explains the discontinuities we can see here.
We don't have a satifsying solution here so as a workaround, users need to make sure that there are enough probes and that the background is regular when looking at the refracting object. This should avoid most of these issues.