Search Issue Tracker

Fixed

Fixed in 2021.3.34f1, 2022.3.15f1, 2023.3.0a17

Votes

1

Found in

2021.3.17f1

2022.3.15f1

2023.3.0a13

Issue ID

UUM-35705

Regression

Yes

kShadowCastingShadowsOnly objects are rendered by Projectors (built-in renderer)

--

-

The built-in renderer does not cull kShadowCastingShadowsOnly objects for the Projector render loop in 2021.3, which can result in several issues if those features are in-use:
* Wrong visuals as materials can be applied multiple times
* Floating/intersecting transparent geometry or Z-fighting depending on what the shadow-caster is and what the depth test type is
* A performance regression in 2021+ due to additional geometry being rendered

This was noticed in VRChat on 2021.3 where the player avatar's shadow casting mesh visibly z-fights with the visible mesh under certain projectors when using an Equals z-test with no depth bias.

 

The issues looks like it was introduced in [commit bb013b0975df31e677f2e252e86f92cfe9e3fb52|https://github.cds.internal.unity3d.com/unity/unity/commit/bb013b0975df31e677f2e252e86f92cfe9e3fb52] where some culling of kShadowCastingShadowsOnly nodes was moved to a scriptable render loop file without anything to cover the built-in renderer.

 

Repro project attached which demonstrates multiple application of materials, shown as the objects being incorrectly coloured in 2021.3+.
# Load SampleScene in 2019.4 to see the correct visual
# Load SampleScene in 2021.3 or later to see the doubling of materials

 

The original:

!image-2023-05-15-12-23-45-204.png!

The multiplied effect with a depth-equals test:

!image-2023-05-15-12-25-27-701.png!

 

 

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.