Creating a large scale explosion using FumeFx

 

Vikas Nagolkar takes us through the creation of a large scale explosion using FumeFX.

Introduction

In my last tutorial on creating large-scale smoke using FumeFX, I mentioned the concept thermodynamics. Well in this instance, and indeed for any kind of fluid-based fire or smoke effect, it's all related to the core procedures of thermodynamics. The effect I will be creating this time is a stylized large-scale explosion.

So to start, we need to make a small and quick fluid emitter.

Setting up a particle system

This effect has been simulated via Particle Flow. With this technique, even a small amount of particles can create a great effect; it's just a matter of tweaking a few settings. Follow these steps carefully to achieve this effect.

• Hit 6 to open Particle Flow and create a standard flow. Now remove 'Shape, Rotation' from the local event and rename this event as 'PFS_LSE_Engine'.
• Select your global event 'PF Source 001' and make the following changes in its parameters:

o Emission Parameter:
• Logo size: 10.0
• Icon type: Rectangle
• Length: 20
• Width: 20
• Viewport Quantity Multiplier: 100.0%
• Render Quantity Multiplier: 100.0%

o System Management Parameter:
• Upper Limit (Particle Amount): 1000000000
• Viewport Integration steps: Half Frame
• Render Integration steps: Half Frame

Once you have finished adding details to your global event make sure to save the file as 'LargeScale_Explosion_Start'.

Initial events X4: Now we have to create 4 initial events which will drive our explosions.
Moving to the local event (Event 001), make these following changes:
o Birth Operator:
• Emit Start: 1
• Emit Stop: 2
• Amount: 2000
• Make sure Sub-frame Sampling check box is on.
o Position Icon: Place your position icon to 'Volume'.
o Speed Operator:
• Speed: 2000.0
• Variation: 500.0
• Speed Direction: Along Icon Arrow
• Reverse: ON
• Divergence: 84.0
o Delete Operator: By Particle Age (3 / 1).
o Display: Make sure you have display operator placed in your local event 001. You can choose any display mode you want (though Dots is preferable).

Moving to the local event (Event 002), make these following changes:
o Birth Operator:
• Emit Start: 1
• Emit Stop: 2
• Amount: 1500
• Make sure Sub-frame Sampling check box is on
o Position Icon: Place your position icon to 'Volume'.
o Speed Operator:
• Speed: 1000.0
• Variation: 300.0
• Speed Direction: Along Icon Arrow
• Reverse: ON
• Divergence: 69
o Delete Operator: By Particle Age (3 / 1).
o Display: Make sure you have display operator placed in your local event 001. You can choose any display mode you want (though Dots is preferable).

Moving to the local event (Event 003), make these following changes:
o Birth Operator:
• Emit Start: 1
• Emit Stop: 2
• Amount: 500
• Make sure Sub-frame Sampling check box is on.
o Position Icon: Place your position icon to 'Volume'.
o Speed Operator:
• Speed: 800.0
• Variation: 550.0
• Speed Direction: Along Icon Arrow
• Reverse: ON
• Divergence: 45.0
o Delete Operator: By Particle Age (1 / 2).
o Display: Make sure you have display operator placed in your local event 001. You can choose any display mode you want (though Dots is preferable).

Moving to the local event (Event 004), make these following changes:
o Birth Operator:
• Emit Start: 1
• Emit Stop: 2
• Amount: 2000
• Make sure Sub-frame Sampling check box is on
o Position Icon: Place your position icon to 'Volume'.
o Speed Operator:
• Speed: 1500.0
• Variation: 600.0
• Speed Direction: Along Icon Arrow
• Reverse: ON
• Divergence: 55.0
o Delete Operator: By Particle Age (3 / 1)
o Display: Make sure you have display operator placed in your local event 001. You can choose any display mode you want (though Dots is preferable).

 

Setting up FumeFX Simulation

Now in order to set up FumeFX, you need to create a container in which all effects are simulated.
First, we need to set up the FumeFX data and make it ready for visual presentation. Go to the standard primitive panel, hit the dropdown menu and select FumeFX.

Now you can create a container, in the same way you create a box using geometry.

After you have created your container, go to the modifier panel to open FFX_GUI and its related parameters. As a note here, you'll need to check which version of FumeFX you're using. I'm using FumeFX 3.0.1, which has no major differences with the latest version of the program, but older versions may prompt a few messages. Don't worry though, this tutorial and its files can be opened into any version of FumeFX.

Now FumeFX contains 4 main menus and 6 very important tabs. The Simulation tab is the main engine of FumeFX, so I'll focus more on this part. I'll break it down into 2 subsections: one where we'll add particles into our source and another where we'll tweak settings from FFX GUI.

 

Finding FumeFX in the menu panel

Adding particles

First, save your file as 'LargeScale_Explosion_WIP'. Now go to the helper section and hit in the dropdown menu > FumeFX > Particle Source. Select the particle flow you created earlier, and place it in the FumeFX source stack.

Finally amend these settings here:
• Radius: 12.692
• Variation: 10.0
• Velocity Multiplier: 1.65
• Variation: 10.0
• Fuel: (Add type, Amount: 100.0, Variation: 10.0)
• Temperature: (Add type, Amount: 2000.0, Variation: 10.0)

 

Amending the following settings

Setting up FumeFX GUI

We'll start with the settings from the FFX General tab. The General tab contains 4 sub-tabs containing general parameters, output, playblast, and 3ds Max script.

Adjust the following settings:
o General Parameters sub-tab
• Spacing: 2.5
• Width: 1500.0
• Length: 2500.0
• Height: 3000.0
• Adaptive: CHECKBOX ON
• Sensitivity: MIXED
• Threshold: 0.01
• Size: 600 x 1000 x 1200
• Simulation up to 31586, and Render up to 17583 are my values for the final result. You may choose your own desired value – but try not to lower your spacing too much.
o Output sub-tab changes.
• Start Frame: 0
• End Frame: 100
• Viewport Update: 1
• Exported Channels: Fuel, Smoke, Temperature, and Velocity.
• Make sure that you set your default path to one folder for caching out the entire simulation.
o Playback sub-tab changes.
• Play From: 0
• Play To: 100
• Start Frame: 0, while the rest remains the same.

 

Some of the settings to change in the General Parameters section

The Simulation sub-tab

You'll need to change the following parameters in the Simulation sub-tab:

o Simulation sub-tab parameters:
• Solver: Conjugate Solver (Architectural Solver has not yet been included in FumeFX)
• Quality: 9
• Maximum Iteration: 120
• CFL Condition: 5.0
• Maximum Simulation Steps: 1.0
• Advection Stride: 2.5 (produces smaller curls)
• Time Scale: 0.85
o System Simulation sub-tab parameters
• Gravity: 1.0
• Vorticity: 1.0
o Turbulence Noise
• Scale: 1.0
• Frame: 12.0
• Details: 5.0
• Offset: 0.0
o Blocking Sides system
• X Axis = NONE
• Y Axis = NONE
• Z Axis = -Z Axis.

Now let's move towards the Fuel sub-tab from the Simulation tab. This is one of the most important tabs.
• Fuel Buoyancy: -0.1
• Ignition Temperature: 100.0
• Burn Rate: 5.0
• Burn Rate Variation: 0.5
• Heat Production: 10.0
• Expansion: 3.0
• Fuel create smoke: CHECK BOX ON
• Smoke Density: 5.0 (much denser smoke)

 

Some of the settings to change in the Simulation tab

The Render tab

Let's move to the Render Tab – we don't want any extra details like Fluid Mapping and Wavelet turbulence. Again, the Render tab contains a set of main sub-tabs. Here, I'll note the settings for the tabs we'll be working in.

o Rendering Parameters
• Step Size: 5.0%
o Fire
• Fire Color: 0.6
• Fire Opacity: 1.0
• Check the screenshot below for the shader settings
o Smoke
• Ambient Color: R=26, G=26, B=26
• Opacity: 22.0
• Check the screenshot below for the shader settings
o Smoke Shader Values and RGB Colors
• Key 1: Position (0.00) R=7, G=3, B=3
• Key 2: Position (48.38) R=137, G=120, B=120
• Key 3: Position (100.00) R=27, G=27, B=27
o Fire Shader Values and RGB Colors
• Key 0: Position (0.00) R=58, G=21, B=3
• Key 5: Position (2.10) R=255, G=108, B=0
• Key 1: Position (4.57) R= 1, G=0, B=0
• Key 3: Position (7.43) R=144, G=76, B=3
• Key 2: Position (9.33) R=34, G=11, B=0
• Key 4: Position (52.00) R=0, G=0, B=0
• Key 1: Position (100.00) R=0, G=0, B=0

 

The settings used in the Rendering Parameters tab

Adding your source

Now is a great time to save your file. You should get into the habit of saving your file periodically to avoid losing your work.

Now we can take the final steps. First, go to the last tab 'Obj/Src'. There, you'll find an empty stack. Add the Particle Src you created earlier.

You'll also notice that once you load that source in FFX GUI, a new empty stack will be highlighted below. Add your PF Source inside that FumeFX Particle source (if you didn't include earlier).

 

Adding your created sources to the stack

Lights and camera

Now save your file again.

At this point, I also begin to implement the lights and camera placement and settings. See the screenshot here for my set up.

 

My lighting and camera setup

Simulation

You'll notice at this point that if you hit the Simulation button, it won't simulate. So the proper order is to save the simulation file first.

Go to the General tab and in the output sub-tab you'll find the Output path. Just next to that there will be a small box. Hit that box. It will open and ask us to save our cache file. Save the file as 'FFX_Scanline_Plumer_.fxd'. Now '.fxd' defines the FumeFX data, and the cache file has been calculated on the overall values we have amended in FFX GUI.

Let's save our file as 'Scanline_Plumer_Finished' and simulate our file.

 

The final effect

Related links

Check out Vikas' tutorial on creating smoke-based explosions using FumeFX
Vikas has uploaded some VFX videos to his Vimeo
Want to submit?

Fetching comments...

Post a comment