coverage node does not early-out unlit emissive portion of material

To test the if substrate coverage node would help with unlit particles, i made an unlit bsdf slab with a ton of noise and pow nodes (lots of shader instructions to ramp up its cost), then put it on a plane and duplicated it so the cost would be very easy to see in stat GPU translucency category. When flipping the coverage node’s weight input from 1 to 0 however, the GPU cost stayed the same, meaning that none of the pixels were getting culled despite their coverage being at 0. When the material uses a LIT slab, those instructions do clearly get culled and I can see a decrease in the GPU cost going from coverage = 1 to = 0, but the instuctions going into the emissive unlit portion are apparently always calculated since the cost only goes down by 1/3 of what i would have expected.

Expected: if coverage=0, the entire slab should be skipped for that pixel.

[Attachment Removed]

Steps to Reproduce

Make a new material and set it to additive.

Make an unlit emissive slab with a lot of expensive logic plugged into it (just so the expense can be easily seen)

Plug unlit emissive slab into the A input of a coverage node.

Plug masking logic into the Weight so you can change how much of the Unlit BSDF slab is seen.

[Image Removed]Make a plane in your level and put this material on it. Duplicate it on top of itself a few times to further make the cost obvious.

Have STAT GPU up, and see the cost of the translucency is high, as expected.

[Image Removed]Change the coverage mask param to mask out all of the plane so a majority of it has coverage of 0.

Note there is no change in the translucency cost, despite subtrate’s stated ability to early-out shader instructions per-pixel.

[Image Removed]

[Attachment Removed]

Hi,

I’m not sure how to reproduce the issue you’re seeing. Would you be able to provide a simple minimal scene that includes the material and/or detailed repro steps? That way I can investigate and potentially file a bug report.

Thanks in advance,

Sam

[Attachment Removed]

Hi,

Thanks a lot for the repro steps and screenshots. I could reproduce the issue on my end and will file a bug report for this. I will post the link to the public issue tracker here once it becomes available.

Thanks,

Sam

[Attachment Removed]

Ok i added in the missing section with repro steps

[Attachment Removed]

Hi,

the issue is now available at this link so you can track its progress.

Thanks again,

Sam

[Attachment Removed]