Search Issue Tracker

Fixed in 14.0.3

Votes

0

Found in [Package]

14.0.3

Issue ID

1421660

Regression

No

Shadow casters can't be SRP-batched when they have different UnityPerMaterial values

Package: Scriptable Render Pipeline HD

-

Reproduction steps:
1. Open the attached project "ShaderGraphSRPBatcher.zip"
2. Enter Play mode
3. Open the Frame Debugger window and enable it
4. Select either of the two "ShadowLoopNewBatcher.Draw" draw calls under "HDRenderPipline::Render Main Camera/ExecuteRenderGraph/RenderShadowMaps"

Expected result: The draws are batched
Actual result: The draws are not batched, a message is displayed:
"Why this draw call can't be batched with the previous one
Objects either have different shadow caster shaders, or have different shader properties / keywords that affect the output of the shadow caster pass"

Reproducible with: 10.9.0 (2020.3.35f1), 12.1.7 (2021.3.4f1), 13.1.8 (2022.1.3f1), 14.0.3 (2022.2.0a15)
Could not test with: 7.7.1 (2019.4.39f1) (Broken assets when downgrading/remaking project)

Reproducible on: macOS 12.0.1 (Intel)

Note: In 2022.2.0a15 the second line of the message is under Batch Cause

  1. Resolution Note (fix version 14.0.3):

    Fixed in: 2022.2.0a16 (HDRP 14.0.3)

Add comment

Log in to post comment