Learn how to use Chaos Group’s Phoenix FD to create and render realistic visual effects directly inside of 3ds Max. You can find the video and how to access the scene files for this tutorial is at the bottom of this post.
Phoenix FD is a dynamic fluid simulator capable of producing realistic fire, smoke and water. In this tutorial we will look at creating a realistic mushroom cloud generated from a nuclear explosion.
Setting up the display and system units to a real world scale
As a fluid simulator, Phoenix FD does a great job at representing real world scales and temperatures. So where ever possible it is good to keep everything to this scale. With 3ds Max open, you will start by setting up the system unit scale. Go to customise and then units setup, set the display unit scale to generic. Click on system unit scale and set 1 unit equal to 20 Centimetres. This will keep the simulation quite small within the viewport which will speed up the simulation whilst maintaining real world scale values within the parameters.
Set the boundary of the simulation
In the create panel and under standard primitives, scroll down to PhoenixFD. Select PHXSimulator and draw out a region, this will define the size simulation. Go to the modify panel and under grid, set the X and Y size to 150 and the Z size to 190. Next, draw a cylinder shape inside the PHXSimulator. Set the radius to 8 and the height to 6. Right click the cylinder and go to the object properties. Under the general tab, un-tick renderable so that it is not visible when rendered.
Animate the speed of the discharge to control the explosion
Go to the create panel and under helpers, select PhoenixFD. Add a PHXSource to the viewport. Within the modify panel scroll down and choose add then select the cylinder. Increase the temperature to 3000, the smoke to 5 and the discharge to 300. Turn on auto key and move the slider to frame 10 and then reduce the discharge to 5.This will make the discharge of the explosion fast at the beginning but then start to slow down towards frame 10. Finally, turn off auto key.
Set up how the simulation moves and interacts against time
Select the PHXSimulator and under simulation, set the conservation method to symmetric. This is good for effects that require symmetry such as this mushroom cloud. Also increase the quality to 20. The maximum step controls how the smoke will move from one region to another, increase this to 8. It is important to note that this parameter works together with the cell size. Incorrect values could mean that the simulation moves unrealistically. The cell size in this instance controls the size of the cloud clusters. The default value of 1 works well.
The SPF upper and lower limits control what happens to the simulation at the core as well as what happens when the simulation starts to outrun the time it has to complete its simulation. Incorrect values could mean that the motion of the mushroom cloud starts to decrease unnaturally. Set the upper limit to 1 and the lower limit to 0.1.
Adjust the grid to become adaptive to the simulation
The grid sets the boundaries for the simulation. Because the mushroom will increase in size over time, the boundary might end up too small and the smoke will start to fill as if it were inside a closed box. To stop this from happening set the adaptive grid to smoke and set the threshold to 0.01. The simulation needs to be told that it cannot be adaptive in the Z direction otherwise the smoke will travel below what would be the ground. Set the Z boundary condition to jammed (-).
Setting up the dynamics of the simulation
Within the dynamics parameters, un-tick wind from movement. Because the boundary is now increasing in size over time, we do not want the change in wind to effect the simulation. Set the std. gravity to 0.8 and reduce the turbulence by lowering the vorticity to 0.05. Increase the randomise amount to 0.3 to introduce random fluctuations in the dynamics.
Preparing the simulation for rendering
Under the rendering parameters set the step (%) to 100. Go to colours and transparency and a new dialog box will appear. Here you can control the appearance of the simulation. Under simple colour, set the diffuse to RGB 42, 42, 42. Increase the multiplier to 2.0 to improve the global illumination within the simulation.
Open the time configuration dialog box and set the end time frame to 150. Go back to the simulation parameters of the PHXSimulator and click start and you will be able to see the simulation within the viewport. Once it has reached frame 150 the simulation is stored and you can now play it back. If you wish to adjust any settings you can simply press play once more to run the simulation again.
Play back the simulation to see the results within the viewport
Quick tips
Speed up the simulation
To get a faster simulation within the viewport, you can lower the conservation quality within the simulation parameters of the PHXSimulator.
GPU preview of the simulation
Preview the final result mid simulation using GPU rendering within the viewport. Right click a view and go to extended viewports and choose PhoenixFD GPU preview. A high spec graphics card will give you more frames per second.
Real time updates and tweaks
Make amends and tweak the final colour of the simulation and get visual feedback in real time using GPU rendering.
Watch the video tutorial
Downloads
If you would like access to the scene files used in this tutorial please click here to download.