Page MenuHome

Overlapping objects of different sizes with volumetric materials render incorrectly
Confirmed, NormalPublicBUG

Description

System Information
Operating system: Windows-10-10.0.18362-SP0 64 Bits
Graphics card: GeForce RTX 2060 SUPER/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 445.75

Blender Version
Broken: version: 2.83.4, branch: master, commit date: 2020-08-05 06:00, hash: rBc113af82881a
Worked: 2.82a

Short description of error

Two cubes, both principled volume, one large one small, smaller cube inside larger cube.

The area inside the smaller cube from the view perspective renders differently than outside with a hard edge where the mesh ends, the effect is much easier to see with a texture controlling the volume density of the large cube. Looks to me like an issue with blender using different step sizes for different objects. Definitely not an issue with not enough transparency/volume light bounces, already tried that.

Only happens with cycles

Exact steps for others to reproduce the error
Open blend file
Switch to rendered view
Toggle visibility of big volume and/or small volume in outliner to see difference
Extra notes in shader nodes for big volume and small volume's materials

Event Timeline

I'm not sure what to look for.
Does this problem only happen in GPU rendering?
Did you try OpenCL, Cuda, Optix?

Tim (Canopy) added a comment.EditedAug 15 2020, 5:04 AM

Tried with optix, cuda and cpu, same result with all. Here's what the render looks like on my end, note the hard edges on the cube despite the principled volume in the cube having 0 density. The same issue happens if you have anything plugged into the volume material output for the small cube, including transparent bsdf

At first, I thought that small cube is refracting light somehow, but what happens here seems to be that density of small cube "overrides" density of large cube.

This picture is file as you provided

Here I moved right face of small cube a bit to the left.

As to whether this is correct behavior, I am not sure. This doesn't happen in eevee though.

I guess what you expect is some kind of volume blending?

Tim (Canopy) added a comment.EditedAug 18 2020, 4:22 AM

I'm still pretty convinced there's something going on with how blender steps through volumes here, notice how in this blend file the stripy step artifacts become higher frequency and change direction inside the smaller cube in this scene, I recommend playing around with the viewport step rate slider for a good look at how the artifacts behave

how the render looks on my end, with the problems highlighted:

on how I'd expect it to behave I'd say volumes should interact cumulatively, where two volumes overlap the light gets scattered/absorbed by both volumes (without noticeable artifacting etc)

Richard Antalik (ISS) changed the task status from Needs Triage to Confirmed.Aug 18 2020, 10:52 PM
Richard Antalik (ISS) updated the task description. (Show Details)

I have confirmed this on fact, that original file renders correctly in 2.82a. I have some problems to get consistent results with your new file so I am not sure what issue there is. it could be completely different issue

Brecht Van Lommel (brecht) changed the subtype of this task from "Report" to "Bug".Jan 18 2021, 12:36 PM