Search Issue Tracker
Under Consideration for 2021.3.X, 2022.3.X
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 multiplied effect with a depth-equals test:
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
- 3D Sample Scene (HDRP) template tutorial Welcome Dialog pop-up doesn't appear on project creation
- [Profiler] The Addressable Asset Module module outputs an ArgumentException when asset GUIDs produce a hash collision with Addressables
- Huge amounts of tests have a start delay when pressing "Run All" in the Test Runner
- Blackboard: Double borders around the tooltip
- [WebGL]VideoPlayer Rendering stops when setting FilterMode of a texture downloaded with UnityWebRequestTexture.GetTexture()