2.8 cycles smoke/volume artifacts

Hi Guys,

I tried to google this all day, not much luck so here it goes -

I’m using 2.8 and cycles, a simple scene with 2 lights and a quicksmoke, the world has a volume scatter at .1 . I’m getting strange black box artifacts (or white ones, depending on which pathtracer I’m choosing). Funny thing is, it happens only after I bake the sim, before baking it seems to be alright in the viewport at least.

Anyone experienced this before?

(using only cpu on a macbook pro for this one, but same things happens on a 12core xeon with a 1070, using linux)

Many thanks,

Dan

rolling back to 2.79b doesn’t seem to create the same issues with the same settings, so I’ll use that as a workaround. The experimental releases are producing the same errors for me -

Creating a default quicksmoke, having a volume scatter in the world settings with .1 density, dropping a light in there and it’s the same artifacts every time.

Might be some render settings I’m screwing up though, not sure, I’m pretty new to blender. (I tried upping every kind of samples for the pathtracer but didn’t really see a change)

What is the purpose of that ?
Use a volumetric material for simulation domain but don"t do nesting of volumes.
Boundaries of volume objects are always noticeable when 2 volume objects are overlapping.

the purpose would be to have a volumetric environment with some smoke inside as part of the main subject (irrelevant, but a witch cooking some stuff in a dark forest). kinda like a foggy hazy thing, to see some kind of volumetrics for the lights, have some atmosphere going, that sort of thing.

I think it’s safe to say that the huge black boxes aren’t boundaries but artifacts, especially since this doesn’t happen in 2.79b. Anyhow, just wanted to avoid having to comp the 2 volumes together, was looking for something less hacky.

The boxes corresponds to empty space optimization generating a mesh around volume to speed up Cycles render in area of domain that are without smoke.
https://developer.blender.org/D3038
https://developer.blender.org/rB7377d411b47d50cd943cd33e3e55c0409bb79f91

This optimization was a new feature done a little bit before 2.79b release. As a new feature, it did not integrate 2.79b.
This result is only visible in 2.8 because optimization is only present, there.

ah, yes, that’s the culprit. thanks for clarifying, it was driving me crazy. would be good to have an option to switch it off though. I’ll trying upping the transparency bounces as suggested in the link.

So how can I fix this issue. I am using 2.82a and still the same large blocks… I am trying to create a ghost made up of a smoke domain volume, but I also have a cube volume inside the room for the volumetric lighting streaming through the window. Smoke within a volume. I tried everything from ultra high settings to a lot of transparency samples… Nothing has worked so far…

I haven’t managed to fix it, the scene I had problems with I had to render in 2.79 (it was using pre-mantaflow smoke domains). I tried to export the bake as an openvdb and try it as a new openvdb object in the new experimental branches as well as daily builds but didn’t have much luck (smoke seemed lowres skewed).

Apart from trying to render in layers and comp it together I didn’t seemed to find any workaround.

Thank you for your reply. Thanks to this thread and zeauro’s reply from Feb 2019 I learned that this is casued by the overlapping of two volumes and a feature called ‘empty space optimisation’ which was implemented in 2.8 onwards. I couldn’t resolve the issue in 2.82a however there is a beta version of 2.83 on Blender’s website and they have implemented a switch to control this optimisation in this latest beta!! It is under the fluid/gas volume domain settings and it is called empty space optimisation. By default it has a tiny value. I set it to 0 and No more artefacts!!! Render time increases dramatically but in my case it was worth it!

Awesome, thanks for pointing it out! That sure takes care of quite a few issues, overlapping volumes are not that rare.