Skip to content

nxExplosiaFX

nxExplosiaFX is an intuitive GPU powered tool used for the simulation of smoke and fire from a source object, particle or spline.


efx_SimulationTab_01.jpg

nxExplosiaFX Simulation tab.

This can be set manually, in the boxes provided, or by dragging the ‘handles’ on the bounding box in the scene.

efx_Domain_Size_01.jpg

nxExplosiaFX Domain Size.

This is the voxel size within the boundaries of the solver.

The solver volume is divided into cubes of this size.

Smaller values result in more accurate/detailed simulations but are slower to playback and render.

efx_Domain_Voxels_01.jpg

nxExplosiaFX voxel display with Voxel Size set to 50cm.


This increases the spatial resolution of the voxel grid to add more detail while retaining the broad features and shaping of the base-resolution simulation.

efx_UpScale_01.jpg

nxExplosiaFX with the same simulation, using 3cm voxels. The right image has Upscaling set to 3.

This speeds up or slows down the pacing of the simulation.

100% is the natural timing, 200% doubles the speed of the dynamics, 50% halves the speed of the dynamics.


These are statistics regarding memory use and processing time and are updated as the simulation runs.


These settings provide a simulation around what happens when fuel ignites.

The rate at which available fuel is burnt.

Simulates the temperature of the ‘burn’.

The amount of smoke produced by the ‘burn’.

This setting simulates the level of explosivity.

The temperature threshold at which emitted fuel will ignite and begin to burn.


These settings relate to the ‘background’ temperature and fuel concentration in the broader environment, far away from EFX emission sources.

These set the background temperature and fuel concentration in the broader environment, which can have a subtle effect on the simulation source.

The Fuel value also acts as the minimum fuel threshold for dissipation. Voxels with a fuel value at or below this level will not be affected by Fuel Dissipation.


Diffusion in nxExplosiaFX can be thought of as the rate of movement of a parameter, such as smoke or heat, throughout the solver.

The higher these values are, the greater the even distribution of the parameter and so the less contrast you will see in the result.

efx_Diffusion_01.jpg

nxExplosiaFX, with the same simulation, using 3cm voxels and Diffusion set to 0, 50 and 100*.*

Smoke Diffusion, Temperature Diffusion, Fuel Diffusion

Section titled “Smoke Diffusion, Temperature Diffusion, Fuel Diffusion”

The diffusion values for smoke, temperature and fuel respectively.

This setting is labelled Viscosity but it is actually another diffusion setting, this time for velocity.

As you might expect, increasing this value smooths out movement and gives the impression of a thicker, more viscous medium.


These values control the dissipation of a parameter, the effect being to reduce it over time.

efx_Disspation_01.jpg

nxExplosiaFX, with the same simulation, using 3cm voxels, adjusting Smoke Dissipation and Temperature Dissipation.

Smoke Dissipation, Temperature Dissipation, Fuel Dissipation

Section titled “Smoke Dissipation, Temperature Dissipation, Fuel Dissipation”

The dissipation values for smoke, temperature and fuel respectively.

This setting acts to reduce velocity over time.


Gravity is inherent in nxExplosiaFX so an nxGravity modifier is not needed.

This is the gravity strength on the positive Y axis.

Smoke rises due to the heat of burning.

This value can reduce or increase the smoke buoyancy, so it will rise slower or faster.

nxExplosiaFX smoke only with simulation setting Smoke Buoyancy to -1.

The same as for the smoke buoyancy, but for heat and fuel respectively.


This subtab is where the source(s) of the simulation are set and finetuned.

efx_Sources_Tab_01.jpg

The Sources tab settings.

If sources in the scene are moving quickly, applying their emission once per frame will leave gaps.

Applying a value in this setting will fill the gaps with additional inter-frame images of the source.

For mesh sources, the numerical value sets the number of additional images.

efx_MotionGapFill_01.jpg

These two images have the same simulation settings, with Motion Gap Fill at 0 (zero) and 10. **

The list of source objects.

If the object has a green check mark icon, it will be used as a source; if it has a red ‘x’ icon, it will not be used.

This is set as Surface by default but can be changed to Volume, to explode from within the scene object.

efx_EmitFrom_01.jpg

The nxExplosiaFX Emit from menu, showing the two modes Volume and Surface.


Only available with the Emit From set as Surface, this setting presents a level of ‘padding’ between the surface area of the scene object and the ‘burn’ visual, allowing more fuel to access the surface area.

Surface Width relates to the size of the zone around the mesh surface that emits at full strength (measured in voxel spacings).

Taper Width is an additional smoothing region that extends farther and gradually reduces to zero emission strength.


The parameters available below will differ slightly, depending on the object recognised in the Objects list.

Controls the level of smoke produced.

By clicking on the black arrow next to Smoke, two further parameter options become available.

This is how the emission is displayed.

The options are: Set, Blend, Add / sec and Sub. / sec.

The default, this sets the amount per frame.

Rather than overwriting the channel value absolutely, this blends the emission with any existing value in that voxel. This is generally the better choice when multiple source objects overlap.

Adds or subtracts the channel set, per second.

Set as None, by default, the smoke is uniformly emitting across the surface of the object.

The smoke can also be weighted by the other settings: Tag, Texture or Noise.

Each of these settings will allow the usual C4D options to add further detail.

efx_WeightBy_01.jpg

The nxExplosiaFX Weight by options*.*

Sets the ‘burn’ temperature.

The Mode and Weight by settings are explained above.

Controls the amount of fuel in the solve, affecting the flames produced.

The Mode and Weight by settings are explained above.

This is an additional setting available with Fuel to avoid having to keyframe or data map the Fuel value.

The Start and End relate to the frames.

Simulates air pressure levels in the solve.

The Mode and Weight by settings are explained above.

This additional setting is also available with Pressure to avoid having to keyframe or data map the Pressure value.

The Start and End relate to the frames.

This option appears with a spline or emitter source.

Controls the velocity imparted to the fluid from the source.

Set as Object Motion, by default.

The other options are Mesh Normal or Custom.

Each of them then give an additional percentage or cm setting to fine tune.

efx_Velocity_From_Object_01.jpg

nxExplosiaFX Velocity From set to Object Motion, using 0, 100 and 200%.

This option appears with a spline or emitter source and controls the amount of color displayed.

0 (zero) means no color is displayed and 100% is a full viewport display.

Set as Object, by default.

This can also be set to Shader or Custom.

Each option also gives additional settings to further control the color.

efx_ColorModes_01.jpg

nxExplosiaFX, showing each Color mode: Object, Shader and Custom.

To view color in the simulation, these steps are required:

efx_SetColor_01.jpg

1: In the Solver tab > Channels, enable the Color option.

efx_DrawModes_01.jpg

2: The viewport drawing must to be set as follows: Draw Mode as Volume Slicing and Display Channel as Color.


efx_CollidersTab_01.jpg

The Colliders tab settings.

Any object dropped into this list will interact as a collider object.

efx_CollidersTab_02.jpg

Colliders tab, showing collisions with a Cube object.

When this is enabled the inside facing ‘normals’ of an object are used.

efx_CollidersTab_03.jpg

Colliders tab, showing collisions with a Torus, with Inside Normals enabled.

This setting pushes the fluid simulation away from the collider.

Larger pressure values give a stronger push.

Negative pressure attracts the fluid to the collider.

At 100%, a moving collider will transfer its velocity to the fluid simulation.

Changing the scale value pre-scales the velocity before transferring to the fluid.


efx_SolverTab_01.jpg

The Solver tab settings.

These checkboxes indicate which channels are used in the simulation.

The default is for smoke, temperature and fuel to be checked.

In fire simulations, a fire requires fuel to burn and heat to ignite the fuel.

This may then generate smoke, or it may not, and you can turn smoke off if desired.

But if you turn off fuel, there is nothing to burn and you won’t see the fuel or smoke even though there is still heat from the temperature level.

Turn off the temperature and there’s nothing to ignite the fuel, so you will see nothing happening at all.

As an example, if you are set to display fuel and smoke, then you uncheck Smoke in this tab, you will only see the fuel display, as no smoke will be generated.

If you check this box, to add the color channel to the solver, you can specify a specific color to be used in the display.

To do this, you would also need to set the Color setting in the Display tab.


The Pressure Solver aims to keep the fluid incompressible during its flow.

The method used to solve for the pressure field is iterative and the iterations terminate when the accuracy setting is met, or when the maximum iterations are reached.


The Diffusion Solver is used when diffusion is enabled in the Simulation tab.

Diffusion causes the density in different channels to smoothen and spread out.

This solver is also iterative, and the iterations terminate when the accuracy setting is met, or when the maximum iterations are reached.


Advection is the process of the transport of some quantity - e.g. smoke or velocity - through a fluid or gas, by motion.

The different channel weights (smoke, fuel, temperature, color) are transported by the movement of the background fluid.

The CFL Number determines how the simulation automatically and adaptively chooses the number of subframe steps based on an analysis of the motion.

The solver will allow the fastest moving part of the fluid to move a distance (measured in voxel spacings) equal to ‘CFL Number’ in one time step.

If the fluid is moving fast enough that this distance is exceeded, additional subframe steps will be added (up to the maximum) to more-accurately track the motion.

When the fluid is moving quickly, tracking the motions accurately will require inserting additional solver steps for each frame advance.

The maximum and minimum number of sub-frame steps can be selected here.


nxExplosiaFX carries out advection for these different properties.

For each one there is the choice of algorithm: Fast or Accurate.

The fastest algorithm and the best choice for Temperature advection.

It is also recommended for Color.

The slower algorithm and the most memory-intensive, this is the most detailed and is therefore recommended for Smoke and Fuel advection simulations, for which fine detail is important.


When solving the simulation, you could simply solve each voxel inside the bounds, but that would be slow and inefficient.

Instead, you can solve only those voxels where something is happening, adjusting the volume to be solved as the simulation progressed.

This is what adaptive bounds does.

In general you should leave this enabled unless you require the whole solver volume to be solved each iteration, but doing that will be significantly slower than using adaptive bounds.

efx_AdaptiveBounds_01.jpg

The Solver tab, Adaptive Bounds options, using the display options to view them.

Check this box to enable adaptive bounds.

Set at 4, by default, this affects the size within the boundaries of the solver as the simulation progresses.


Track Smoke, Track Temperature, Track Fuel, Track Velocity, Track Color

Section titled “Track Smoke, Track Temperature, Track Fuel, Track Velocity, Track Color”

To adjust the bounds the solver must keep track of some parameter, such as smoke or fuel.

With these settings you can choose which parameters the solver will track.

Smoke Threshold, Temperature Threshold, Fuel Threshold, Velocity Threshold, Color Threshold

Section titled “Smoke Threshold, Temperature Threshold, Fuel Threshold, Velocity Threshold, Color Threshold”

These are the minimum values of a tracked parameter, which must be present in a voxel before a change in bounds takes place.

If these values are never exceeded, the bounds will never change.

For example, if you track only the temperature, the temperature value in any voxel must reach the temperature threshold level to trigger the adaptive bounds.


These options will enable the domain walls to be opened and closed.

efx_BoundryWalls_01.jpg

The Solver tab, Domain Boundary Walls set with + Y enabled.


efx_DynamicsTab_01.jpg

The Dynamics tab, with the Forces subtab UI.

By clicking on this button, forces layers can be added.

The options are: Add Turbulence, Add Vorticity and Add Wind.

Each one of these layers has their own parameter settings, which are explained below.


The Layer list is populated with Turbulence and Vorticity layers, by default.

They can, of course be disabled, by clicking on the green check (turning it into a red ‘x’).

Alternatively, if either layer is not required, they can be deleted.


Set as Simplex, by default,

The other options are: Turbulence, Wavy Turbulence, Voronoise, FBM and Cubic.

efxNoiseTypes_01.jpg

Noise Type options.

Sets the strength of the turbulence.

This the scale of the noise.

Octaves determine the level of fine detail.

Regulates how the turbulence strength persists through multiple octaves.

Sets levels of animation by altering the speed of the turbulence.

Controls how quickly the frequency increases with each successive octave.


Here, the following options can be added: Smoke, Temperature, Fuel, Color (R), Color (G), Color (B), Velocity (Local x), Velocity (Local y), Velocity (Local z), Speed, Position (Local x), Position (Local y), Position (Local z), Pressure and Document Time.

When set in the default, None, the three parameters below are greyed out.

efx_DynamicsMapping_01.jpg

In the Dynamics tab, the available Map to maps.

Minimum and maximum levels can be set here to fine-tune the mapping.

What is shown in this grid will depend on the mapping option chosen.

This can then be adjusted to meet whatever simulation is required.

efx_DynamicsMapping_02.jpg

In the Dynamics tab, showing the Turbulence layer mapped to Position (Local y), the strength of the turbulence set happens only halfway up the domain volume.


efx_DynamicsVorticity_01.jpg

Vorticity layer options in the Forces subtab.

Amplifies existing rotational motion in the velocity field, enhancing swirling detail that would otherwise be lost to numerical dissipation.

These parameters offer the same mapping options as the ones in the Turbulence layer.


efx_Dynamics_Wind_01.jpg

Wind layer options in the Forces subtab.

The wind object is added to the link.

Clicking this button will add a wind object to the scene.

efx_Dynamics_Wind_02.jpg

Wind object added to the Object Manager.

efx_Dynamics_Wind_03.jpg

Wind object moving the simulation.


Alters the wind strength.

Adds a random variation level to the wind strength.


These parameters offer the same mapping options as the ones in the Turbulence layer.


efx_ModifiersTab_02.jpg

The Modifiers subtab options.

If this box is checked, only objects which are child objects of the same System object as the solver will be used as sources.

This setting is ignored if the solver is not in a System object hierarchy.

Drag the required modifiers into this list.

You can temporarily disable a modifier in the list by clicking the green check mark icon, to change it to a red cross.

efx_ModifiersTab_01.jpg

The Modifiers subtab simulation, using nxDirection and nxAttract modifiers.


efx_ParticleAdvection_01.jpg

The Particle Advection subtab options.

If you add an emitter to the scene, its particles will be carried along by the fluid’s velocity field, following the motion of the simulation.

Additional parameter options will become available once the emitter is dropped into the list.

efx_ParticleAdvection_02.jpg

xpEmitter dropped into the Emitters list, being advected by the simulation.


efx_DisplayTab_02.jpg

The Volume subtab UI in the Display tab.

With this enabled Upscaled simulations will be drawn in the viewport.


Set as Volume Ray Marching, by default.

The other options are: Off or Volume Slicing.

efx_DisplayTabDrawModes_01.jpg

The Volume subtab Draw Mode setting options.

Disables all drawing in the viewport.

This default setting gives the options below.

Increases or decreases the quality of the volume ray marching, with the usual effects on viewport display and render times at higher values.

Controls the levels of transparency in the solver, allowing the visualization of the smoke and fire to be made more or less transparent for tuning the visibility of other scene elements.


Alters the rendering of the simulation, thickening or thinning the smoke appearance.

Changes the color of the smoke with the usual C4D palette.

This setting concerns the reflectiveness of the volume.

At higher levels, there is more light coloring in the smoke.

At lower levels, there is a more regular smokey color.

The direction that light is scattered when it is within the volume, towards or away from the light-source.


Sets the temperature above which flames are emitted.

Controls the incandescent glow from hot soot particles within the flame. Higher values produce a brighter, more luminous glow; lower values reduce the glow.

Controls the level of gas emitted, to give further controls over the flame appearance.

Set as Blackbody, by default, this gives a realistic coloring, dependent on heat.

The other option is Manual, which engages the setting below for the color choice.

Only becomes available once the Hot Gas Color Mode is set to Manual.

This then allows a color to be selected from the pallet.


These options are for the ray marcher display and provide settings for a uniform ambient light that illuminates the EFX volume; basically illuminating the smoke from an external lamp.

The ‘lamp’ shines from a particular direction, which is set using the two angles: Heading and Pitch.

Sets the brightness of the ‘lamp’.

Sets the color of the ‘lamp’.


efx_DisplayTab_VolumeSlicing_01.jpg

The Volume subtab, with Draw Mode set to Volume Slicing UI in the Display tab.

Changing the setting to Volume Slicing gives more options.

This is set as Smoke + Temperature, by default.

The other options are: Smoke + Fuel, Temperature, Smoke, Fuel, Color or Speed.

Each of these will give different animations based on personal need in the scene and, again, will make different parameter options available, which can be manipulated to give the ‘look’ that you desire.

efx_DisplayTab_VolumeSlicing_Modes_01.jpg

The Volume tab, slicing Display Channel setting options.

More slices means more detail and a smoother visualization, but it can also reduce the performance of the viewport.

Controls the levels of transparency in the solver, allowing the visualization of the smoke and fire to be made more or less transparent for tuning the visibility of other scene elements.


efx_DisplayTab_VewportHUD_01.jpg

The Viewport HUD subtab options, with both Draw Velocity Field and Draw Velocity Trails checked.

Set as None, by default, this menu controls how the voxel grid is (or isn’t) is displayed.

The alternative settings are: Full, Back only, Base only, Base and back and All back faces.

On by default, this box can be unchecked to remove the domain bounds.

This can be checked to display the bounds as they dynamically adapt to the solver.

Enable this to show the voxels in the scene.


All options here are grayed out, by default.

Enabling this will give options to see the velocity field and provide access to the settings below.

Again, this is very memory-intensive.

If this box is checked, the velocity color is taken from the Speed Color gradient, which appears.

Similarly for the alpha.

The overall transparency of the display can be altered using this setting.

Sets the minimum and maximum speeds of the velocity


Again, all options here are grayed out, by default.

Checking this box, will activate these settings and a trail is drawn to show changes in each voxel over time.

This gives you much more information about how temperature or other parameters are changing within the solver.

If this box is checked, the velocity color is taken from the Speed Color gradient, which appears.

Similarly for the alpha.

Checked by default, this can be disabled to allow more personal controls, using the Speed Min and Speed Max options.

Increase or decrease length of the velocity trails (in scene units).


efx_GroupsTab_02.jpg

The Groups Affected subtab options.

When a source object is an emitter, you can specify which groups are advected by dragging the particle group objects into this list.

If the list is empty, all groups emitted by the source emitter are advected.


efx_MappingTab_01.jpg

The Mapping tab options.

The usual mapping layers are offered here.

List of the layers mapped in the scene.

For full details on how Mapping works, see the dedicated page:

Mapping


You can use the Fields options to control where nxExplosiaFX operates.