environment pass is occluded by geometry making it unusuable with a shadowcatcher #73497

Open
opened 2020-01-29 19:53:21 +01:00 by michael campbell · 21 comments

System Information
Operating system: Windows-10-10.0.17134-SP0 64 Bits
Graphics card: GeForce GTX 1070/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 431.86

Blender Version
Broken: version: 2.83 (sub 1), branch: master, commit date: 2020-01-24 11:49, hash: 11df5443e5
Worked: unsure if ever

Short description of error
environment pass is occluded by geometry making it unusuable with a shadowcatcher

Exact steps for others to reproduce the error

open attached .blend, go to compositing workspace, hit f12, when finished use the split viewer factor to slide between the image and the environment pass.

Perhaps the transparency section needs an additional 'shadow catchers are transparent'.......although that wouldn't make much sense as shadow catchers should always be transparent. Regardless, the environment pass definitely shouldn't contain any geometry information. Is there ever a scenario where you'd want the environment AOV to be jet black where the 3d objects are located?

environment alpha bug.blend

**System Information** Operating system: Windows-10-10.0.17134-SP0 64 Bits Graphics card: GeForce GTX 1070/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 431.86 **Blender Version** Broken: version: 2.83 (sub 1), branch: master, commit date: 2020-01-24 11:49, hash: `11df5443e5` Worked: unsure if ever **Short description of error** environment pass is occluded by geometry making it unusuable with a shadowcatcher **Exact steps for others to reproduce the error** open attached .blend, go to compositing workspace, hit f12, when finished use the split viewer factor to slide between the image and the environment pass. Perhaps the transparency section needs an additional 'shadow catchers are transparent'.......although that wouldn't make much sense as shadow catchers should always be transparent. Regardless, the environment pass definitely shouldn't contain any geometry information. Is there ever a scenario where you'd want the environment AOV to be jet black where the 3d objects are located? [environment alpha bug.blend](https://archive.blender.org/developer/F8312025/environment_alpha_bug.blend)

Added subscriber: @3di

Added subscriber: @3di
Member

Added subscribers: @Sergey, @lichtwerk

Added subscribers: @Sergey, @lichtwerk
Member

Changed status from 'Needs Triage' to: 'Needs Developer To Reproduce'

Changed status from 'Needs Triage' to: 'Needs Developer To Reproduce'
Member

Can confirm the behavior
This might very well not be a bug, but a limitation instead.

#55916 (Cycles Shadow Catcher Creating Multiple Shadows) seems related.

However, I would also expect (in an ideal world) to somehow not have the shadow catcher show up in that pass [this one at least, havent checked others...]

Maybe @Sergey Sharybin (sergey) wants to share his wisdom?

Can confirm the behavior This might very well not be a bug, but a limitation instead. #55916 (Cycles Shadow Catcher Creating Multiple Shadows) seems related. However, I would also expect (in an ideal world) to somehow not have the shadow catcher show up in that pass [this one at least, havent checked others...] Maybe @Sergey Sharybin (sergey) wants to share his wisdom?

Worth mentioning that it’s not just the shadow catcher that shows up in the pass, it’s all objects.

Worth mentioning that it’s not just the shadow catcher that shows up in the pass, it’s all objects.
Member

In #73497#862695, @3di wrote:
Worth mentioning that it’s not just the shadow catcher that shows up in the pass, it’s all objects.

Not sure that other objects are an issue? Since the recommended way to combine the passes is to ADD environment (or how are you comping this?):
https://docs.blender.org/manual/en/dev/render/layers/passes.html#combining

> In #73497#862695, @3di wrote: > Worth mentioning that it’s not just the shadow catcher that shows up in the pass, it’s all objects. Not sure that other objects are an issue? Since the recommended way to combine the passes is to `ADD` environment (or how are you comping this?): https://docs.blender.org/manual/en/dev/render/layers/passes.html#combining

Check the file I sent and use the viewer to look at the envinroment pass on its own prior to any comping.

image.png

Check the file I sent and use the viewer to look at the envinroment pass on its own prior to any comping. ![image.png](https://archive.blender.org/developer/F8313603/image.png)

I should point out that the only reason that the glass data isn't included in the environment pass is because I used the transparent glass option in the render settings's film panel.

I should point out that the only reason that the glass data isn't included in the environment pass is because I used the transparent glass option in the render settings's film panel.

using add isn't a very good solution as it wont work in all circumstances where there's alpha in the foreground, or if you want to move/scale the environment in comp etc.

using add isn't a very good solution as it wont work in all circumstances where there's alpha in the foreground, or if you want to move/scale the environment in comp etc.
Member

I would stick discussion to the shadow catcher here [since ADD is the recommended way, Eevee will do it the same afaict, if this should really be changed, it would turn this report into a design kind of discussion...]
For me, the shadow catcher [and only that for the moment] is a pretty valid point, leaning towards calling this a bug...

For other objects and the environment pass, I would suggest heading over to https://devtalk.blender.org/ and start a discussion there...

I would stick discussion to the shadow catcher here [since ADD is the recommended way, Eevee will do it the same afaict, if this should really be changed, it would turn this report into a design kind of discussion...] For me, the shadow catcher [and only that for the moment] is a pretty valid point, leaning towards calling this a bug... For other objects and the environment pass, I would *suggest* heading over to https://devtalk.blender.org/ and start a discussion there...

But there’s nothing wrong with the shadow catcher, the bug is with ALL objects masking the environment pass. There is no situation where this is needed, and it’s meaning you have to render twice (rendering the environment pass in its own view layer with everything else hidden)

But there’s nothing wrong with the shadow catcher, the bug is with ALL objects masking the environment pass. There is no situation where this is needed, and it’s meaning you have to render twice (rendering the environment pass in its own view layer with everything else hidden)
Member

Added subscriber: @Jeroen-Bakker

Added subscriber: @Jeroen-Bakker
Member

@3di that is by design as the environment is an additive pass that is applied in the end of the composite. If you want a full environment pass you need to setup a specific view layer for it. See https://docs.blender.org/manual/en/dev/render/layers/passes.html#cycles

Emission from the directly visible background. When the film is set to transparent, this can be used to get the environment color and composite it back in.

image.png

@3di that is by design as the environment is an additive pass that is applied in the end of the composite. If you want a full environment pass you need to setup a specific view layer for it. See https://docs.blender.org/manual/en/dev/render/layers/passes.html#cycles ``` Emission from the directly visible background. When the film is set to transparent, this can be used to get the environment color and composite it back in. ``` ![image.png](https://archive.blender.org/developer/F8313739/image.png)

Added subscriber: @brecht

Added subscriber: @brecht

Changed status from 'Needs Developer To Reproduce' to: 'Archived'

Changed status from 'Needs Developer To Reproduce' to: 'Archived'
Brecht Van Lommel self-assigned this 2020-02-01 01:24:03 +01:00

This is indeed the design, feedback on that is outside the scope of the bug tracker.

This is indeed the design, feedback on that is outside the scope of the bug tracker.
Member

In #73497#863173, @brecht wrote:
This is indeed the design, feedback on that is outside the scope of the bug tracker.

@brecht: talked to @Jeroen-Bakker on #blendercoders, and the point about about the shadowcatcher (not other objects) is valid, no?

> In #73497#863173, @brecht wrote: > This is indeed the design, feedback on that is outside the scope of the bug tracker. @brecht: talked to @Jeroen-Bakker on #blendercoders, and the point about about the shadowcatcher (not other objects) is valid, no?

It's a valid feature request to want an environment pass that you can use for compositing shadow catchers onto, but not a bug in my opinion. That was never the intent behind the original implementation of the environment pass and shadow catcher.

If you want to layer the render to recomposite it, that's what render layers are designed for. The light passes are there to decompose the combined render into separate components, they will not render anything that isn't already in the combined pass.

It's a valid feature request to want an environment pass that you can use for compositing shadow catchers onto, but not a bug in my opinion. That was never the intent behind the original implementation of the environment pass and shadow catcher. If you want to layer the render to recomposite it, that's what render layers are designed for. The light passes are there to decompose the combined render into separate components, they will not render anything that isn't already in the combined pass.

Changed status from 'Archived' to: 'Confirmed'

Changed status from 'Archived' to: 'Confirmed'
Brecht Van Lommel removed their assignment 2020-02-01 10:26:18 +01:00
Member

OKi, thx checking again

OKi, thx checking again

Thanks for looking at this guys.

It's worth mentioning that for a more robust compositing workflow (not just recreating a render from it's passes), it's absolutely necessary to be able to produce AOV's which are not masked by scene geometry. Especially for custom AOV's. I'll add it on right click select and hope for the best.

Thanks for looking at this guys. It's worth mentioning that for a more robust compositing workflow (not just recreating a render from it's passes), it's absolutely necessary to be able to produce AOV's which are not masked by scene geometry. Especially for custom AOV's. I'll add it on right click select and hope for the best.
Brecht Van Lommel added this to the Render & Cycles project 2023-02-07 19:08:06 +01:00
Philipp Oeser removed the
Interest
Render & Cycles
label 2023-02-09 14:01:30 +01:00
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No Assignees
4 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#73497
No description provided.