Lets talk about Mantaflow

new builds are available


how to change the base color of my fire??

Into Principled Volume shader, change Blackbody Tint color.

Cache and rendering problems have not been solved by new builds.
I can render smoke but only without noise.
And I can not render liquid.

Oh my god i missed it completely ,i thought i had to add kolor ramp xD.Thanks zeauro

Hi, I’m using the Nov. 8, 2019 experimental build and I can see simulations fine in the viewport, but no matter the caching or baking, it never shows up in renders. Any ideas?

1 Like

New build at Blender.org available.



In today’s build, Rendering problem was solved.
Settings were added to control minimal and maximal amount of Time steps for adaptive stepping.
For liquids, there is an additional setting to smooth collision with complex set of multiple obstacles.
And there is a value to define a ratio between FLIP and PIC method. Lowering this value should stabilize simulation producing less splashes.


Using Mantaflow to try and create a train smoke stack. I can’t seem to get things to accurately collide against a cylinder so the smoke escapes from the top…

Here’s the Blend file with the Mantaflow branch

No need to sim & render what’s not seen. So simply move emitter (“Circle”) near the top of the Cylinder and hide it (uncheck “Show Emitter”).

I need the sim to actually collide with the cylinder. It changes the look of the sim if it’s actually hitting the cylinder on it’s way out versus having the emitter right at the top. For art direction purposes that isn’t a solution I can use.

Enlarge “Thickness Outer”. Altho none of the particles in your case get out, since all are killed with collision.

Otherwise, it becomes messy…

Mantaflow_Smoker.blend (2.0 MB)

It’s not really those particles I’m too worried about colliding. I need the actual smoke sim to be colliding with the cylinder instead of leaking out.

In your .blend file, particles are going through obstacle and smoke is emitted from particles.
If particles are outside of cylinder, smoke is emitted outside of Cylinder.

Each particle will emit a little volume of cells of smoke.
If resolution of domain is too small, a big cell of smoke will exist where there are particles. It may be thicker than cylinder shell.
If you increase resolution of domain, you will realize that cells corresponding to particles will be smaller.
And if you succeed to make there volume of smoke not passing through shell of cylinder, you will probably don’t end up with expected amount of smoke.

If you want to use a particle system as smoke emitter, you need a flow of particles made of much more particles and that will be close to expected smoke flow in order to have a small emission of smoke per particle.
It would probably be simpler to use a displaced sphere as smoke emitter, here.

I began by first just trying a sphere mesh, but the problem there is that the smoke collider just kills the smoke, never allowing it to live and escape from the top. Perhaps there is a parameter I’m not setting correctly.

In other simulation packages this would be addressed by a sub-frame sampling that would calculate the collisions more accurately, but in this case turning up the sub steps doesn’t solve the issue.

I reanalyzed your file.
It is problematic to have origin of domain not at center of its bounding box.
Applying its scale and repositioning origin to geometry should eliminate collision problem.
And increasing resolution 64 is too small for length of domain compare to cylinder shell thickness.

Adaptive Stepping and CFL number are also substeps settings for mantaflow.
But, here, it looks like problem is due to offsett of origin.

I was messing with some Mantaflow stuff on my Mac laptop and it was working great – BUT

Blender crashed at a certain point and now no matter whatever I cache there is no result in the viewport or in the render. It will take the time to simulate, but there will be no visible result.

I’ve tried creating a brand new scene and appending the Emitter and Domain and it’s the same thing. I’ve also tried deleting the Fluid Modifiers from the domain and emitter and creating from scratch and still no result.

For liquids, it is possible to forget a check box for displaying mesh or particles.
For smokes, generally, it happens when path to cache is lost.
To make test, it is frequent to simulate with cache pointing to a temporary folder that will be erased at next session. So, if you forget to change cache position to a safe place, simulation is lost.
But you can also simply loose path by moving files and forgetting to set cache’s path as relative.

So, my first suggestion is : Check cache’s path.

what would be the parameters to play with if I’m having collision issues?

My domain should have enough Voxels, my surface thickness is set to .05, but I’m still having leaks.

Curious – Is the ‘Noise’ feature working to add additional detail?

I’ve created a sim and rendered it, and then I toggled the Noise on, with Upres Factor of 2 and Strength of 2 and baked the noise, and rendered that and when I A and B the two renders they are identical.

Simulation resolution is one thing. Precision of volumetrics shading is another one.

By default, tile size for rendering Volumetrics with EEVEE is set to 8 px.
It corresponds to a pretty big tile that will not take into account details of noise as you see them in viewport.
You have to set this setting to 2 px. And at that moment, details of noise should be visible.

Cycles has an higher standard for rendering volumes. Difference between a simulation without noise and one with noise should be obvious by default for this render engine.