Page MenuHome

Regression: Cycles Viewlayer - Holdout not renderable without casting shadows and reflections
Closed, DuplicatePublic

Description

System Information
Operating system: Windows-10-10.0.18362 64 Bits
Graphics card: GeForce GTX 1080 Ti/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 436.02

Blender Version
Broken: version: 2.81 (sub 14), branch: master, commit date: 2019-10-08 22:16, hash: rB0812949bbc3d
Worked: 2.79b

Short description of error
Regression: Cycles Viewlayer - Holdout not renderable without casting shadows and reflections
In Blender 2.79b it was possible to have a holdout (mask layer) and exclude it form illumination


This was the renderlayer config

This isn´t possible in 2.8x anymore.
In 2.8x the object that is masked (holdout) is always used in illumination calculation.
Rendering from 2.81

You see the reflection and the shadow of the red masked cube.
Both following viewlayer configurations do the same.


If you think logical, the configuration in the last image should not calculate illumination for this viewlayer, because indirect illumination is off!

If holdout and indirect only are off the layer is calculated normal.

If holdout is on then indirect only off/on should have an effect! **

Exact steps for others to reproduce the error
Open the attached blend file for blender 2.8


Activate Vieport rendering
You see that the red cube is masked out but shadows and reflections are calculated for it on the other cubes. Activate Indirect only next to the holdout icon in the outliner.

Nothing happens.

Open the attached blend file for blender 2.79b.


Click on Render > Render Image
You get this result. No reflection and no shadow from the masked cube.

Deaktivate Exclude for layer three in the layer tab.

Render the image again. As expected the masked cube is calculated and casts shadows and reflections on the other cubes.

Details

Type
To Do

Event Timeline

Marcus Papathoma (machieb) renamed this task from Regression: Cycles Viewlayer - Holdout not renderable without casting shadows and casting reflections to Regression: Cycles Viewlayer - Holdout not renderable without casting shadows and reflections.Wed, Oct 9, 1:41 PM
Marcus Papathoma (machieb) updated the task description. (Show Details)
Philipp Oeser (lichtwerk) lowered the priority of this task from Needs Triage by Developer to Normal.Thu, Oct 10, 4:14 PM

There were T66362 and T66004 and if I understand correctly, this is a known limitation atm.

The behavior regarding exclude is a known limitation at the moment, there is a comment in the code about it. The dependency graph does not evaluate the excluded objects at all so this requires a different design.

@Brecht Van Lommel (brecht): do you want to keep this one task open for this?
I will put this on Normal prio as TODO type, but feel free to close if this is on the radar anyways...

Philipp Oeser (lichtwerk) changed Type from Bug to To Do.Thu, Oct 10, 4:14 PM