Is it possible to have smoke and flames, or just smoke, to flow in the direction of a curve?

I'm aware that I can use a particle system guided by the curve and then emit the smoke from the particles, but this will not do for the effect I'm trying to achieve since the flames still go up and not in the direction of the curve.

Also I'm aware that I can add a wind forcefield, but that will only push the flames not really guide them along the curve.

  • $\begingroup$ Don't know if you can get a decent result but you could try adding collision object/s that prevent the smoke/flames going where you don't want, kind of like a chimney for it to flow through. $\endgroup$
    – sambler
    Aug 29 '18 at 9:58

Yes, this is possible - you can use a Force forcefield set to act along a curve and set to a negative strength to draw the smoke to the curve as in the following example :

smoke along curve

However, this isn't intuitive to set up as the 'curve' type is not normally available on Force fields - so this is possibly unintended behaviour - but useful nontheless. Note that this works on Blender 2.79b.

To set this up, first add a Curve Guide force - the Curve Guide doesn't actually affect the smoke simulation but does allow a curve to be defined for the direction of the force. Use Edit mode (Tab) to edit the curve into the desired shape.

Now, change the Type in the Force Field physics properties to Force. Since this force now has a defined curve you should see the addition 'Curve' option in the Shape drop-down list. Select this to have the force act along the curve.

Set a negative strength to have the curve draw the smoke together rather than blow it apart.

Here's the result :


Blend file included

EDIT : I recently discovered that it’s also possible to add the curved force another way - instead of ‘fudging’ the force type (as above) to get the curve you can simply add a curve to the scene (bezier, nurbs) and add the force to the curve using the Physics tab. This then allows you to set the force to Curve as described above. Similar applies for surfaces.

Further Edit : The provided file doesn't load correctly in more recent versions of Blender - it is not successfully converted to Mantaflow. Instead you can simply build the simulation as follows :

  • Use Quick Smoke on default cube
  • Shrink and move it to the desired location
  • Add a curve and and edit it to the required shape
  • Add a Force to it and set the strength to, say, -5
  • Set the force Shape to 'Curve'
  • Enable 'Noise' in the domain settings
  • Run the simulation
  • $\begingroup$ quite interestingly, file give really impressive result in blender 2.79b and really bad result in 2.8 or 2.9 $\endgroup$
    – haseeb
    Dec 6 '20 at 16:17
  • $\begingroup$ @haseeb - it seems that the differences between the smoke simulation in the old version loses something in the conversion to Mantaflow so the linked Blend file does not work as expected - for one thing, the force doesn't need to be set so high in Mantaflow but for another the 'Hires' is now replaced with 'Noise' (but isn't being converted). I believe that explains the difference. So, to replicate the original effect, use Quick Smoke on default cube, shrink and move it, add and edit the curve to shape, add a Force to it and set the strength to, say, -5, enable 'Noise', run the simulation. $\endgroup$ Dec 19 '20 at 22:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.