Creating a Smoke-Based Explosion in Fume FX
In this tutorial I will be looking at the procedure for creating the kind of smoke effect shown above. There are many kinds of techniques that artists use to create fiery explosions, smoke-based explosions or mixture of both fire and smoke-based explosions where fuel plays a vital role in that process.
With every development of the Fume FX software comes a new set of parameters that have taken the level of visual effects to new heights.
In my past couple of tutorials, I have focused on showing different kinds of explosion techniques and how they can be easily created without the aid of Maxscript or using multiple sets of different software along with Fume FX.
The most important things in explosions are the set of values that you put in Fume FX GUI and the particles that you're using. Fume FX has great support from the Particle Flow System (PFS), Thinking Particles and the 3ds Max Legacy Particle System for generating and simulating effects.
Also, Fume FX has a good level of compatibility with V-Ray and mental ray. And the most important thing that I like to mention is the time that Fume FX takes for rendering in V-Ray and mental ray.
Personally I haven't checked out if Fume FX supports Cebas Final Render or Maxwell render engine. But again, every rendering engine and affects application has their own pros and cons.
Anyway I think we should get back to this effect!
Step 1: Generating PFS (Particle Flow System)
This effect has been simulated via Particle Flow. Even a small number of particles can create a great effect. It's just the matter of tweaking a few settings. Follow these steps carefully to achieve this effect:
Hit 6 to open Particle Flow. Create a standard flow. Now remove Shape and Rotation from the local event.
Rename this event "PFS_MSE_Engine"
Now select your global event "PF Source 001", go to its parameters and make these changes:
• Emission parameter:
o Logo size: - 10.0
o Icon type: - Rectangle
o Length: 20
o Width: 20
o Viewport Quantity Multiplier: 100.0%
o Render Quantity Multiplier: 100.0%
• System Management parameter:
o Upper Limit (Particle Amount): 1000000000
o Viewport Integration steps: Half Frame
o Render Integration steps: Half Frame
• Script: leave this section alone.
Once you have finished adding details to your global event, make sure to save the file as "MSE_Plume_Start".
Now we have to create only 1 initial event, which will drive our explosions.
Move to the local event (Event 001). Rename it "PFS_Gen" and set the parameters to:
• Birth Operator:
o Emit Start: 2
o Emit Stop: 3
o Amount: 650
o Make sure the Sub-frame Sampling checkbox is ticked.
• Position Icon: place your position icon to "Pivot".
• Speed Operator:
o Speed: 450.0
o Variation: 155.0
o Speed Direction: Along Icon Arrow
o Reverse: ON
o Divergence: 66.0
• Delete Operator: By Particle Age (2/1)
• Display: Make sure you have the display operator placed in your local Event 001. You can choose any display mode you want. (Dots is preferable)(Fig.01).
Step 2: Setting up the Fume FX Container
In order to set up Fume FX you need to create a container in which all the effects will be simulated (calculated /solved).
Let's set up Fume FX data and make it ready for visual presentation. Go to the standard primitive, hit the dropdown menu/sector and hit Fume FX (Fig.02).
Now create the container just like you would create a box from geometry. Then go to the Modifier panel to open FFX_GUI and its related parameters.
Make sure you know which version of Fume FX you are using, as there have been major changes in the latest version of Fume FX and loading your latest files in older versions may prompt you with a few message. I am using Fume FX 3.0.1.
This tutorial and its file can be opened into any version of Fume FX you any have. I have used only the very basic techniques to acquire the result. No advance systems from the latest Fume FX version have been used.
Fume FX contains four main and important menus, and six very important tabs. The Simulation tab is the main engine of Fume FX so we'll look more into that part.
I'll break this Fume FX part into two sub-sectors. In one we'll add a particle into our source and in the second we'll majorly tweak settings from the FFX GUI.
Step 3: Setting Up the Fume FX Source
First of all save your file as "MSE_Plume_WIP".
Go to the Helper section, hit the dropdown menu, hit Fume FX and select Particle Source.
Add the particle flow you created earlier into its Fume FX source stack (Fig.03).
Amend the settings to the figures given below (Fig.04):
• Radius: 8.0
• Variation: 10.0
• Velocity Multiplier: 1.0
• Variation: 10.0
Step 4: Setting Up the Fume FX GUI
Now what I'll do is jot down each and every value from every tab to avoid creating any confusion. We'll start with the FFX General tab. Now the general tab contains four sub-tabs, namely General Parameters, Output, Playblast and 3ds Max script.
General Parameters sub-tab changes (Fig.05):
• Spacing: 0.6
• Width: 250.0
• Length: 250.0
• Height: 279.521
• Adaptive: On
• Sensitivity: Mixed
• Threshold: 0.01
• Size: 417 x 417 x 466
• Simulation up to 3555MB and Render up to 1392MB are my values for final result. You may choose your own desired value. But remember; do not lower your spacing too much.
• Total amount of voxels in FFX Container: 81032274.
Output sub-tab changes:
• Start Frame: 0
• End Frame: 100
• Viewport Update: 1
• Exported Channels: Fuel, Smoke (Note that if you want to further this explosion, just add the Velocity Channel in your Output Tab before you simulate your effect.)
• Make sure that you set your default path to one folder for caching out the entire simulation.
Playback sub-tab changes:
• Play From: 0
• Play To: 100
• Start Frame: 0
• The rest of the settings remain the same.
Now let's look deeper into the Simulation sub-tab. Set the Simulation Sim sub-tab parameters to the following:
• Solver: Conjugate Solver
• Quality: 9
• Maximum Iteration: 200
• CFL Condition: 5.0
• Maximum Simulation Steps: 1.0
• Advection Stride: 0.25 (produces smaller curls)(animated from frame 0 to frame 20)
• Time Scale: 0.85 (animated from frame 0 to frame 20)
System sim sub-tab parameters:
• Gravity: 0.5 (animated from frame 0 to frame 20)
• Vorticity: 1.0
• X Turbulence: 0.05 (animated from frame 0 to frame 20)
• Scale: 1.0
• Frame: 22.0
• Details: 5.0
• Offset: 0.0
Blocking Sides system:
• X Axis = NONE
• Y Axis = NONE
• Z Axis = -Z Axis
See Fig.06 for more information.
Now let's move on to the Fuel sub-tab from SimTab, which is one of the most important tabs. Set the parameters to the following (Fig.07):
• Fuel Buoyancy: -0.1
• Ignition Temperature: 100.0
• Burn Rate: 15.0
• Burn Rate Variation: 1
• Heat Production: 10.0
• Expansion: 1.0
• Fuel create smoke: ON
• Smoke Density: 0.2 (animated from frame 0 to frame 20)
Let's have a look at the animation we have done inside the Sim tabs:
• Advection Stride Animation:
- o Frame 0: 0.25
- o Frame 10: 0.85
- o Frame 20: 0.25
• Timescale Animation:
- o Frame 0: 0.5
- o Frame 10: 0.85
- o Frame 20: 0.85 unchanged here until the last frame 100
• Gravity Animation:
- o Frame 0: 0.5
- o Frame 10: 0.25
- o Frame 20: 0.25 unchanged here until the last frame 100
• X Turbulence Animation:
- o Frame 0: 0.05
- o Frame 10: 0.025
- o Frame 20: 0
• Fuel Expansion Animation:
- o Frame 0: 0.2
- o Frame 10: 1
- o Frame 20: 1 unchanged here until the last frame 100
• The rest of all the sub-tabs remain unchanged
Okay, we're done here so let's move on to the Render tab. We do not want any extra details like Fluid Mapping and Wavelet turbulent.
The Render tab contains sub-tabs, so for now we'll focus only on the workable tabs.
Here are the Render tab parameters sub-tab changes:
• StepSize: 5.0%
• The rest remain unchanged.
Smoke sub-tab changes:
• Ambient Color: R,G,B: 26,26,26
• Smoke Color: R,G,B: 64,64,64
• Opacity: 10.0
The ambient color and smoke color settings can be seen in Fig.08.
Alright now it's time to take the final step. Go to the last tab "obj/src" and there you'll find an empty stack. Add the Particle Src you created earlier. Also you'll notice that once you load that source in the FFX GUI, a newly empty stack will be highlighted below. Add your Pf Source inside that Fume FX Particle source (if you have not included it earlier)(Fig.09).
If you notice, in Fig.10, I have implemented lights and a camera.
Before you start your simulation, save your file and 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 inside the Output sub-tab you'll find the Output path. Just next to that there will be a small Channel box. Hit that box. It will open and will ask us to save our cache file. Save the file as "MSE_Plume_.fxd". Now ".fxd" defines Fume FX data, which is the cache file calculated on the overall values we have amended in FFX GUI.
Save our file as "MSE_Plume_Finished" and simulate out the file (Fig.11).
All you can do now is render out your animation and just drop the rendered footage into your favorite compositing package and play with it. You can get really interesting effects.
Fig.12 - 14 show my lookdev snapshots. Only the first greenish look effect was generated inside Fusion; the rest were composed in After Effects.
Note that this file has been saved in 3ds Max 2010, 3ds Max 2011, 3ds Max 2012 and 3ds Max 2013. This file has been checked in all the above versions and works fine. You can download the files here.