Smoke Flickering Problem

My final smoke render comes out very glitchy and I can’t resolve why.

Here’s a video link: https://www.youtube.com/watch?v=_s0xGSqad1s&feature=youtu.be

Here’s also my domain settings: https://imgur.com/QlIDMMX

Smoke is emited by a simple plane with default flow settings. I rendered this in 2.79 version to test smoke rendering on my RX 470.

Try it without adaptive domain. Also render out to image (not video) pngs/or exr usually, and then create a video after rendering out the frames. The sim and rendering takes a lot of memeory and you don’t want the updating video file to stay in memory at the same time.

I always render seperate images and I was actually thinking it could be adaptive domain. Thanks, I will try it out.

Great, that solved my problem! But now it takes a long time to bake. Is there a way to solve this issue? Why would they even put an adaptive domain if the result is bad?

Hi there, having the same issue here with flickering smoke.

I rendered my animation in Eevee (I have to use Eevee as the whole project is designed to it) but the smoke is flickering as you can see here: https://youtu.be/g_D63fX2HG8

I have NO adaptive domain in use.
I rendered out to MPEG-4 video format, but also tried rendering as seperate PNG and combined them afterwards to MPEG-4 video. The result was the same :frowning:

Any more settings I could check? I don’t think it has to do with Eevee Render sampling rate, right?

I am thankful for any help from you guys.

This could be because of Eevee’s volumetric start and end distances in the render settings. The volume samples will be spread between these 2 distances, so you want them as narrow as your project will allow for maximum quality. increase the start distance and decrease the end distance until you find what your scene can tolerate and then leave some margin.

Hi thanks for your reply. It is funny because yesterday I found a video explaining this issue:

I played around with the volumetric start and end values and got a slightly better result, but it is still far away from beeing good.
Then, I moved the light sources out of the smoke domain as this seems to cause problems as well. Again, I got a slightly better result. Now, playing with other values like

  • Volumetrics => Samples
  • Volumetrics => Distribution
  • Volumetrics => Light Clamping
  • Volumetrics => Volumetric Shadow Samples

We will see, if I can get a satisfying result. Just switched to Cycles “for fun” but even in Cycles there was flickering on the smoke so it must be something else. …I assume, a combination of different things, not so easy to determine.

It looks like the flickering is following the camera’s movement. I would try rendering a short section of the animation from a non-moving camera to really see if it has something to do with it. If not, then we know the camera is not the problem.

Also, in Eevee, the overall samples of the render do have an effect on volumetrics quality, not just the volume settings. If you are rendering with a low amount of samples, that could be a problem.

It looks like the flickering is following the camera’s movement. I would try rendering a short section of the animation from a non-moving camera…

Oh yes, that’s a great advise. Thank you very much. :+1: I will try that and give response.

Indeed, my Eevee sample rate is very low, I guess. These are my current settings for Eevee and Volumetrics:

Will try the non-moving-camera shot first, then raise the Eevee sample rate afterwards if necessary.

Using a static camera did work :slight_smile: , see here:

Any idea what could to be improved now?

Will run a try with moving camera and more eevee render samples now.

20 samples is pretty low for volumetrics.

If I understand Eevee’s volumes correctly, they are done using a bunch of 2D slices placed at different distances from the camera. The number of volume samples and also the number of render samples both have an impact on how many slices of volume you get. When the camera is moving, different parts of the smoke progressively change which slice they appear on, which is very visible if there is too few of them, because the smoke visibly crosses gaps in between the samples.

When the camera is moving, different parts of the smoke progressively change which slice they appear on

I definitely can imagine it works like that. Thanks for your thoughts.

Meanwhile, I played around with some settings again and forced my PC to work overtime :slight_smile:

volumetrics_settings

I dont’ think it made much of a difference. Cranking up the Volumetric Shadows Samplerate helped a bit, but not much.

Smoke was rendered at 256 Resolution Devisions but this value, as also the Smoke material should not be the problem as we figured out a static camera worked fine with those settings.

Of course, I could crank up the Render Samplerate and Volumetrics Samples more but it seems that this is not the way to deal with the problem :frowning:

I will test it with 200 Render Samples and 256 Volumetric Shadows Samplerate the next days but I have not that big hopes that it will work.

Did you try different values for the distribution parameter? If understand, it makes the samples get more concentrated closer to the camera, so each scene will have a different optimal number and higher is not always better.

But maybe Eevee is just not good enough for this simulation. Maybe the solution would be to render the smoke separately with Cycles and composite it back on top. It should be pretty fast if it’s just the smoke.

What I would do:
-Duplicate the scene. If you are familiar with having 2 scenes in the same blend file, you can use that feature.
-Set the new scene to Cycles. Put all solid objects in a collection and set that collection to holdout.
-In the render settings, go to the “film” section and activate “transparent”. You now have a Cycles render with only the smoke on a transparent background.
-Deactivate the smoke’s visibility in the Eevee render.
-If you are rendering the smoke pass to files, select a file format with transparency. If you have the 2 scenes in the same blend file, you can use the compositor and directly combine the 2 renders in an automated way.

I did try different values for the distribution parameter. But was that before I played with other values. Will try that again.

In the meantime, I got decent results with these settings

200 Render Samples
256 Volumetric Shadows Samplerate
96 Volumetric Shadows

Watch this:

I can live with that.

I must say that this time I rendered as PNG sequence so it might be good to test other render settings with PNG export as well, just to make sure the result really comes from the settings, not from the export media type.

I am not familiar with having 2 scenes in the same blend file. This is my very first Blender project and, of course, I was facing a lot of issues. This “smoke thing” is just the last snippet of it.

Your explanation seems good to follow and maybe, I will try that as well. But this will take at leat 3 weeks as I will go for vacation, soon.

Thank you very much for your help.

1 Like

This does look good now, I don’t really see the original problem anymore.

I don’t think the original problem was due to the file format, as the problem seems to have 3D depth in it. If the problem was due to file format, it would look very different, like the way a heavily reposted .jpg on the Internet looks. Also, it would be visible all over the image, not just the smoke.

If this is your first project, then the trick I gave is indeed a bit complicated for your experience level, but it looks like you won’t need it anyway. Just for completing my explanation, you can have 2 scenes in the same .blend file by doing this:

Then, you will have the equivalent of 2 separate blender files, but combined inside the same file, and you can switch between them with a drop-down menu. This can be useful when doing stuff with the compositor like what I was explaining, because it allows to quickly duplicate a scene, modify its render settings and have the different versions neatly organised into a single project. The compositor can even be setup to use elements from the different scenes, so when you press render, multiple scenes get rendered and combined together at once.

Thanks for sharing your knowledge :wink:

I figured out, that was the Volumetrics Diustribution Value which caused the flickering. I went down to 0.2, step by step, and the flickering became less visual until it almost disappeared. It still see it but I can live with that.
I even could go down to 30 Eevee render samples and it made no difference in quality.

1 Like