In this ninth tutorial of the series on fire and smoke with the Fluid simulator in Blender 4.5, we’ll see how to use Force Fields, such as Turbulence and Curve Guide, to influence the behavior and trajectory of the elements in the simulation.
This tutorial is part of a 10-episode mini-series on the basics of Fire and Smoke in Blender 4.5. For the complete list of episodes, click here.
Video Transcript
Hello everyone! In this ninth tutorial of the series on fire and smoke with the Fluid simulator in Blender 4.5, we’ll see how to use Force Fields, such as Turbulence and Curve Guide, to influence the behavior and trajectory of the elements in the simulation.
The starting scene I’m using for this tutorial is very simple, consisting only of the Domain and a sphere emitting both fire and smoke in Inflow mode.
By adding an Empty to the scene, we can assign it a Force Field to disturb or guide the simulation elements. Force Fields are found in the Physics panel, just like Fluid simulations for Mesh objects. I chose Arrows as the type of Empty, since some Force Fields act in specific directions, and this Empty type makes them easier to visualize right away.

I then add a Force Field, which by default is of type Force. For each Force Field, a tooltip informs us of its action and the directions in which it operates. Force, by default, has the Point shape and acts radially from its center. However, when playing the simulation, we don’t notice any effect, even though the Inflow object seems to be within the Force Field’s range.
In these cases, one procedure that seems to work is the following: after saving the project file, specify a cache folder. Then, switch the Domain’s Baking mode to All and let Blender calculate the simulation for at least a few frames.
Once this process is done, press Play to see if the simulation has been computed correctly. If it has, clear the Domain Cache and set the Baking mode back to Replay.
Adjust both the project’s animation length and the simulation frame range in the Domain, then click Play in the Timeline.
If the simulation now runs correctly, from this point on you can test the different effects in Replay mode.
To control the intensity of the effects, Force Fields provide a Strength field, which applies to the selected Force Field and can be animated.
As a side note, you can change the value of a field for multiple selected objects at once if you hold down the ALT key before clicking on the field to edit it.

Strength therefore allows us to adjust, even with animations, the intensity of individual Force Fields. But as we learned in the tutorials on the Domain, it’s also possible to control the influence of all Force Fields in the scene, or all Force Fields of a certain type. These settings are found in the Field Weights section of the Domain and, as in many cases, they can also have keyframes, meaning the effect of one or all Force Fields can be animated over time.
The Strength field of Force, as well as many other Force Fields, can also take negative values. In the case of Force, this results in fire being attracted toward the Force Field.
On screen, I’m showing an example created by animating the Empty’s movement in the scene and setting Force to a negative value. As you can imagine, this is an interesting way to direct fire and smoke.

Covering all the parameters of every Force Field available would require a separate mini-series, so I won’t be doing that here. However, there’s one section worth examining: Falloff, which allows us to set a range for the influence of a Force Field.
At the moment, the Force Field affects the entire virtual space without any attenuation. To show you a clearer example, I’m changing Force to Wind while keeping the Strength negative. Even though Wind acts only on the Z axis and is placed quite far from the Inflow object, the latter is still affected.

To limit the range of influence of the Force Field, we can use the Max Distance field in the Falloff section. By default, this parameter is disabled. When enabled, the Force Field’s range is represented by a circle in the 3D Viewport. Like many parameters, Max Distance can also have keyframes, making it another way to control the effects of a Force Field in animations. In this case, Wind is pulling flames and smoke because I left Strength set to a negative value.

I now disable Max Distance, return the Force Field to its original orientation, and set a positive value for Strength to quickly check out a couple of other Force Fields.
A very useful Force Field for adding some motion to flames is, of course, Turbulence. The disturbance it introduces is so strong that the smoke makes the flames less visible, so I’m reducing it using the Dissolve option in the Domain.
Turbulence can be made even more random by increasing the Noise parameter. This noise is actually pseudorandom, since it follows certain patterns, and you can choose the pattern using the Noise Seed parameter. If your flames look too uniform, even after adjusting Vorticity or adding Textures, a small Turbulence Force Field might be exactly what you need.
To finish, let’s take a look at the Curve Guide Force Field, which lets us make simulation elements follow a path. For this example, I recreated the initial scene from scratch, saving the new project in a new file and setting up a new cache folder for the Domain. This way, the initial settings of the Domain and Inflow objects I placed in the scene are the default ones you get when creating them.
However, I’m enabling Dissolve, with a higher frame count than the default, to keep the smoke from obscuring the view too much.
I’m also moving the Inflow object to the side to make room for the path curve.

After adding a Bezier curve and positioning it to give it a Curve Guide Force Field, the results are quite disappointing.
If you’re familiar with curves and the Curve Guide modifier, you know it’s good practice to set the curve’s Origin to the start of the path and, most importantly, to make sure the curve has the correct orientation. This can be checked in Edit Mode with Curve Overlays, and an incorrect orientation can be fixed with Switch Direction. Restarting the simulation, things look slightly better, but still not quite right.
I tried various settings, such as disabling gravity in the Domain and increasing the Curve Guide value in the Field Weights. Of course, I also tried lowering Vorticity and Reaction Speed, increasing the resolution, and more. Something did change, but not enough. So let me show you the method I usually use to get the result I want.
I add a Particle System of type Emitter to the object with Inflow and configure the basic parameters so that the particles are emitted properly. Note that the particles immediately follow the curve path, since the emitter is within the Force Field’s range.

The Force Field’s range can be set in its panel using the Minimum Distance parameter. There, we can also set Clumping to 1 so that all the particles converge at the endpoint of the curve.
At this point, I set the Render of the emitter’s particle system to None, because these particles should not be rendered, and then I go back to the Inflow panel.
In this panel, I change the Flow Source from Mesh to Particle System, specifying the particle system I just created. This way, fire and smoke will be emitted from the particles that follow the path.
From here on, you can adjust parameters such as Fuel, Vorticity, and others to give the flames the appearance you want.

Before ending the tutorial, let me also show you how to link a curve’s control point to an external object using a technique called Hooking, which makes it easy to animate the curve’s shape. First, I select the curve, go into Edit Mode, and select the last control point. Then I use the Hook operator, choosing the Hook To New Object option, which creates an Empty for this purpose.

In Object Mode, you can move this Empty and animate its movements, deforming the curve and the flames accordingly. Of course, you can use the same technique to add more Empties for other curve control points, creating more complex animations.

As you may have noticed, at some point the particle emission stops. This parameter is called Frame End and is located in the Particle System panel. In the same panel, the Lifetime parameter instead controls how quickly the particles travel along the curve.

Before wrapping up, here are a couple more considerations.
The size of the Emitter object determines the size of the emission surface. So, if you want the particles to be concentrated along a narrower curve, adjust the size of this object.
The number of particles also makes the fire curve look more or less segmented, so you may need to increase it to give the flames a smoother, more continuous look.
On this front, using Motion Blur, which we’ll cover in the next tutorial, can also help.