Versions Compared

Key

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

...

Section
UI Expand
titleFire/Smoke Resimulation Workflows
Section

Fire/Smoke Resimulation uses existing cache files (with exported Grid Velocity) as a base for a new simulation pass, to do any of the following:

Fancy Bullets
typecircle
  • Increase resolution and enhance details, while preserving the shape and behavior of the base simulation. For example, it's possible to add Wavelet turbulence to increase detail, or simply amplify the resolution.
  • Slow down or speed up the animation, as well as animate the time scale using Phoenix's Time Bend controls. See Slowing Down a Simulation, Animating the Time-Scale, etc. Note that for Liquids, changing the Time Bend settings in the Input rollout is enough, and no resimulation is needed.
  • Keep the grid channels such as Smoke, Temperature, etc., unchanged while modifying the dynamics or number of Drag particles, or vice versa.

Rendering and simulation cache paths can be set manually. For information on how to do this, see the Tips and Tricks page regarding simulation paths and resimulation paths.

When performing a resimulation, it is recommended that you leave the the Dynamics and Liquid settings unchanged between running a base simulation and resimulation, unless more advanced behaviors are specifically needed.

Additionally, the scene must be intact between running the base simulation and the resimulation. Please do not remove any Sources and their emitters, obstacles or forces that interact with the simulation.

 

The resimulation workflow for Fire/Smoke is as follows:

 


 

UI Steps
UI Step
Section
Column
width40%

Enable Velocity in the Output rollout. If you are going to add wavelet turbulence as well, also enable the export of the Wavelet channel.

Column
width60%

Image RemovedImage Added

UI Step
Section
Column
width40%

Start the original (base) simulation and let it run through.

Column
width60%

Image RemovedImage Added

UI Step
Section
Column
width40%

Enable Grid Resimulation or Particle Resimulation. Adjust the resimulation options in this rollout if needed.

Column
width60%

Image RemovedImage Added

UI Step
Section
Column
width40%

Start the simulation again - this time the Resimulation will take place. You can switch between preview and render of the base and resimulated caches by enabling/disabling the Resimulate checkbox.

Column
width60%

Image RemovedImage Added

Section
UI Expand
titleLiquid Resimulation Workflows
Section

Liquid Resimulation uses an already simulated cache sequence and allows you to add, delete or modify the Splash, Mist, Foam or Wetmap particle systems, while preserving the Liquid and other particle systems that you are happy with.

The particle resimulation will affect only the particle systems which are checked in this rollout. If a particle system is not checked, it will remain unchanged. The Liquid always remains unchanged. While the Fire/Smoke Resimulation creates new cache files during the simulation process, the Liquid Resimulation overwrites the existing cache files.

Using Resimulation to just modify a particle system is practical only in case you have a large number of secondary particles such as Foam, Splash, etc. in relation to the number of Liquid particles. Otherwise, if you have mostly Liquid particles and very few other particles, it will be faster to just simulate over again.

 

UI Expand
titleModifying an existing particle system
UI Steps
UI Step
Section
Column
width40%

Select Resimulation → Affect → Particles and enable the respective particle system below (ie. Splash and Mist, Foam or Wetting).

Column
width60%

Image Removed Image Added

UI Step
Section
Column
width40%

Modify the particle system's settings - e.g. for Foam, go to the Foam rollout and tweak the parameters there.

Column
width60%

Image RemovedImage Added

UI Step
Section
Column
width40%

Hit Start to run the simulation again - repeat this process until you are happy with the result.

Column
width60%

Image RemovedImage Added

UI Expand
titleAdding a particle system that did not exist prior to resimulating
UI Steps
UI Step
Section
Column
width40%

Select Resimulation → Affect → Particles and enable the respective particle system below (i.e. Splash and Mist, Foam or Wetting).

Column
width60%

Image RemovedImage Added

UI Step
Section
Column
width40%

Make sure the particle system's simulation is Enabled, e.g. for Foam open the Foam rollout → select the Enable Foam option.

Column
width60%

Image RemovedImage Added

UI Step
Section
Column
width40%

Hit Start to run the simulation again - the particle system will be added to the cache sequence.

Column
width60%

Image RemovedImage Added

UI Expand
titleDeleting an existing particle system
UI Steps
UI Step
Section
Column
width40%

Select Resimulation → Affect → Particles and enable the respective particle system below (i.e. Splash and Mist, Foam or Wetting).

Column
width60%

Image RemovedImage Added

UI Step
Section
Column
width40%

Make sure the particle system's simulation is Disabled, e.g. for Foam open the Foam rollout → deselect the Enable Foam option.

Column
width60%

Image RemovedImage Added

UI Step
Section
Column
width40%

Hit Start to run the simulation again - the particle system will be removed from the cache sequence.

Column
width60%

Image RemovedImage Added

UI Text Box
typetip

UI Path: ||Select PhoenixFDSim|| > Attribute Editor > Resimulation rollout

...

Parameters

...

Section
Column
width40%

Resimulate | resimulate – Enables/disables resimulation mode. When enabled, all normal parameters/actions affect the resimulation. When enabled, the preview and rendering will read from the Output Simulation Path instead of the Input Path. The resimulation will produce the exact same result as the base simulation only with Steps per Frame = 1 in the Dynamics rollout. With a higher number of steps, the intermediate steps cannot be reconstructed, so full simulation is needed.

Use Simulation Start Frame | rs_start_from_sim - When enabled, the Resimulation will run from the first frame of the base simulation to the simulation End Frame or the Custom Stop Frame, depending on the options.

Custom Start Frame | rsStartFrame – Explicitly sets the Start frame of the Resimulation. This can also be a negative number.

Use Simulation Stop Frame | rs_stop_from_sim - When enabled, the Resimulation will run from the base simulation Start Frame or the Custom Start Frame to the last frame of the base simulation.

Custom Stop Frame | rsStopFrame – Explicitly sets the End frame of the Resimulation. This can also be a negative number.

Affect rsAffect – Specifies which part of the simulator to be affected during the resimulation.

Grid – Simulates only the grid content. If there are existing particle groups in the input cache, they will be directly copied to the new cache.
Particles – Simulates only particle groups (i.e. foam/splashes/drag particles). The grid will be directly reused from the input cache.
Both – Simulate both grid and particles.

Amplify Resolution | rsResAmplify – Magnifies the grid resolution. A value of 0 means no change, 1 means doubling the voxel amount in all axes (2*2*2=8 times the resolution), 2 means tripling (3*3*3=27 times the resolution), etc. Non-integer values can also be entered, however, they are slightly slower to calculate. The resolution can also be decreased by using a negative value.

Amplify Method | rsResAmplifyMethod – When the grid resolution is increased, this parameter specifies which method to use to read sample the velocity from the base cache files.

Interpolate – Use interpolation. The velocity channel is stretched from the lower resolution to the amplified increased one. 
Wavelet Fast – Use  – Use wavelet turbulence to create synthesize fine detail. Needs a Grid Wavelet channel exported to be from the base simulation cache files. This is a slightly faster approximation method.
Wavelet Nice – Use wavelet turbulence to create fine to synthesize fine detail. Needs a Grid Wavelet channel exported to be a Wavelet channel exported from the base simulation cache files.

Wavelet Strength | waveletStrength – Specifies the strength of the wavelet turbulence.

Wavelet Cutoff | waveletCutoff – Turbulence with smaller amplitude will be cut off to reduce calculation time.

No-Export Channels | rsTempChannels – Specifies the channels that are used just for resimulation, which will not be exported to the resimulation output cache. For example, for wavelet turbulence, removing the UVW/Wavelet and Velocity channels from the final simulation will reduce the cache size.

Splash and Mist rsPartSplash – Specifies that the splash and mist will be recalculated. 

UI Text Box
typenote

The Affect Liquid parameter on the Splash and Mist rollout will be ignored when resimulating Splash, because the liquid is already simulated and cannot be changed without a full simulation.

UI Text Box
typenote

Resimulating the Foam on Hit parameter on the Splash and Mist rollout requires Splash and Mist to be resimulated.

Foam rsPartFoam – Specifies that the foam will be recalculated.

Wetting rsPartWet – Specifies that a WetMap will be recalculated.

UI Text Box
typenote
The Sticky Effect setting for Wetting in the Liquid rollout will be ignored when resimulating wetting. This is because the liquid is already simulated and cannot be changed without a full simulation.
Column
width60%

 

Column
width20%

 

 

 

Section

Example: Resimulation with Wavelet Turbulence

 


 

UI Text Box
typetip

The example below shows the difference between a base Fire/Smoke simulation and the Resimulation result when using Wavelet Turbulence.

Section
Column
width10%

 

Column
width40%


Base Simulation

Column
width40%


Resimulated with Amplify Resolution = 1
and Wavelet Nice Method

Column
width10%

 

...

Phoenix has many tools for changing the animation timing of a cache sequence after it is simulated. Resimulation with enabled Time Bend Controls can produce smoother playback in cases where the Input Time Bend controls are insufficient. For more information on Resimulating with Time Bend, see the Tips and Tricks topic on How to slow down a simulation, animate the time scale, etc.

 Image Added

Image Removed


Use Time Bend ControlsrsGridTimeBend – Change the time scale of the base simulation according to the Time Bend Controls in the Input rollout. You need to re-scale the animation of all other interacting objects and sources in the scene as well.

...

General-Purpose – Works for all play speeds including backwards playback. It resimulates more quickly, but might produce flickering or jittering in the movement of the fluid. Sources, obstacles, or forces do not need to be present in the scene for this method. However, this method may not produce satisfactory results with animated sources.
Slow Down – Works only for play speeds between 0 and 1. It will produce smooth playback without flicker or jitter but will add more dissipation in the long run, so it's better to combine it with Multi-Pass AdvectionThis method requires all used sources, obstacles and forces to be present in the scene. Any animation in the scene will need to be adjusted accordingly and slowed down to the play speed of the resimulation.

 

 

Section

Example: Time Bend Resimulation

 


 

UI Text Box
typetip

The example below shows the difference between the Input rollout → Grid Blend Interpolation used to slow down without resimulating, the Resimulation → Slow Down Time Bend Method and the Resimulation → General-Purpose Time Bend Method.


Section
Column
width5%

 

Column
width30%

Input Play Speed = 0.2, Interpolation Blend

Column
width30%


Slow Down method + Wavelet

Column
width30%


General-Purpose method + Wavelet

Column
width5%

 


...

UI Text Box
typetip

During resimulation, Phoenix reads cache files from the Base Cache Files Path, performs resimulation operations, and then saves a new cache sequence in the Output and Render Path.

For information on changing the default paths for resimulation, see the Tips and Tricks page.


Image RemovedImage Added 

 

Wait if caches are missing | rsWaitMode – When enabled, waits if the base cache file is not yet available. This can be used if another instance of Maya is simulating the base cache at the same time (on the same or other computer).

...