Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This page provides information on the Simulation rollout for a FireSmokeSim object.

Overview


The Simulation rollout contains the main panel for controlling the simulation process. It displays statistical information for simulation times and the content of the cache file for the current frame. The content can be grid channels such as Temperature or Velocity, or particle groups. You can select which channels are exported to the cache file from the Output rollout, while the particle groups are automatically created by the Simulator.

Most simulations require long time to calculate and it's very convenient to let them run during the night. However, you still have to render the result in the morning and this also consumes a lot of time. The Phoenix FD scripting system allows you to execute any action at the end of the simulation, and that includes the rendering as well. You just have to enable the scripting from the Simulation rollout and open the script text. For more information, see the Nightly Simulation and Rendering section on the Tips and Tricks page.

UI Text Box
sizemedium
typetip

 UI Path: ||Select Fire Smoke Simulator | FireSmokeSim|| > Modify panel > Simulation rollout

 

Actions


 

 

Start, Pause, Stop, Resume | A_StartSim, A_StopSim – Starts, pauses and stops the simulation. Once the simulation has been paused, the option to Resume becomes available. Note that you can stop a running simulation using the Shift+Escape key combination, or with the Escape key, if the option to do so is enabled in the PhoenixFD Global Preferences.

Anchor
Load
Load
Load & StartA_StartSim – Loads the data from a single cache as an initial state for the simulation and starts simulating from the Start Frame the same way the Start action works. The cache can be of the .aur, .vdb, or .f3d formats and so can be imported from a 3rd party software into Phoenix. The loaded grid will be resized to fit the grid's dimensions at the Start Frame. The loaded cache does not need to be a Backup frame or to contain velocity at all - the simulator will load any available channels from the cache file and the rest of the simulated channels will be empty as when starting a brand new simulation. If you wish to smoothly continue a simulated sequence from a given frame, please use the Restore command instead.

Anchor
Restore
Restore
RestoreA_StartSim – Continues a simulation from the currently viewed frame on the timeline. This way a Phoenix simulation that has been stopped previously can be resumed from the point you left off, even after the software was closed and re-opened.

UI Text Box
sizemedium
typetip

Restoring does not work for cache sequences imported from 3rd party software. It is only possible when the full internal state of a Phoenix simulation is exported (controlled by the Backup Interval parameter in the Output rollout). Frames with the full state are called Backup frames. When a Backup frame is currently viewed, the text "Can Restore From Here" appears in the Cache File Content list. The Restore command finds the latest Backup frame up to the current timeline frame and continues the simulation from there.

Get Tutorials – Opens the Tutorials and Examples page in the web browser.

Phoenix Help – Opens up the help documents for the Fire/Smoke Simulation.

Simulation Presets... | A_LoadRenderPreset – Displays a drop-down menu to either load or save .tpr or .slog files, which hold settings for this simulation.

 

Parameters


 

 

Anchor
StartFrame
StartFrame
Start Frame | startframe – Explicitly sets the Start frame of the Simulation. This can also be a negative number. Only available when Timeline (Start Frame) is disabled.

Timeline | parmName - When enabled, the Simulation will run from the Timeline Start Frame.

Stop Frame | stopframe – Explicitly sets the End frame of the Simulation. This can also be a negative number. Only available when Timeline (Stop Frame) is disabled.

Timeline | parmName - When enabled, the Simulation will run to the end of the Timeline. 

Render On Each Sim Frame | rend_sim_frame – During simulation, after each new frame is simulated, this option will start a render with your currently assigned production renderer and with the render settings you have dialed in your Render Setup 3ds Max dialog. You can use this when you leave a long simulation overnight, so you will have a ready rendered sequence when you come back to check on it, even if the entire simulation did not have time to finish. If you are doing test iterations and you don't need your fire/smoke to be rendered with production quality, you could enable the GPU Preview extended viewport and use the Save Images During Sim option instead.

UI Text Box
sizemedium
typetip

When doing test iterations on your simulation setup, you can also speed up the simulation by enabling Cacheless Simulation from the Output rollout.

UI Text Box
sizemedium
typetip

An alternative approach to Render On Each Sim Frame is to automatically start a sequence render after the entire simulation has finished by adding a 'max quick render' command under the OnSimulationEnd() callback of the Use Script option below.


Anchor
UseScript
UseScript
Use Script | script, use_script – Enables the use of a MAXScript during the simulation. Press Edit... to open a window with sample code and a short description of available commands. For more information, please see the Phoenix MaxScript documentation.

Threads Limitmaxthreads – Specifies an upper limit on the number of threads used for the simulation. When the value is set to 0, the maximum number of threads (cores) will be used.

NUMA Nodes– Specifies which nodes will be used if the simulation is executed by a NUMA machine. Phoenix FD is very sensitive to the memory transfer and if all the nodes are used, performance might decrease due to low bandwidth between the different nodes.

UI Text Box
sizemedium
typenote

NUMA stands for Non-Uniform Memory Access. It can be used to restrict the threads used for simulation based on the physical CPUs available on the system (in a multiprocessor system). In this way, better memory access can be achieved when multiple simulations are run on the same machine.

Cache File Content


UI Text Box
sizemedium
typetip

This area displays information on the current simulation. Any data from channels that have been loaded into the simulator are shown. This includes the minimum and maximum ranges for each channel. Check the Grid Channel Ranges and Particle Channel Ranges pages for more information.

Anchor
ContainerDimensions
ContainerDimensions
Note that the Container Dimensions show the loaded cache size as seen in the scene, in the currently selected units. This size is not multiplied by the Scene Scale parameter from the Grid rollout. If you want to see how big the container is as seen by the Phoenix simulator when the Scene Scale parameter is used, check the XYZ info in the Grid rollout.