Versions Compared

Key

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

...


Parameters

...

Section
Column
width60%55%

Simulate Air Effects | simair – When enabled, turns on the built-in air simulator for the areas in the simulation grid which are not full of liquid. The air velocity can be affected by the liquid movement, by Sources, or by fast moving obstacles inside the Simulator. In turn, the air velocity will affect and carry splash, mist, and foam particles. Note, however, that no matter how strong the air velocity is, it will not affect the liquid back. So for example you can use Simulate Air Effects when realistic mist is needed in waterfall setups, or stormy ocean scenes. The air simulation can dramatically increase the quality of splash and mist effects.

UI Text Box
typenote

The air effects stop affecting particles once they exit the Simulator thus altering the particle speed and direction around the Simulator's walls.

Anchor
InertialForces
InertialForces
 Motion Inertia ext_wind – When enabled, moving the Simulator's object over a series of frames causes inertial forces in the opposite direction of the movement. This allows you to link the Simulator to a moving object and keep the size of the grid relatively small, as opposed to creating a large grid that covers the entire path of the moving object. Motion Inertia can be used for moving ground and water vehicles, torches, fireballs, rockets, etc. When this option is used together with the Initial Fill Up option and Open Container Wall conditions, a simulation of moving an object over a sea surface can be done. For more information, see the Motion Inertia example below.

UI Text Box
typetip

When running liquid simulations with the Initial Fill Up option and Open Container Wall conditions, the surface of the generated liquid should remain smooth. If you encounter artifacts in the form of horizontal lines perpendicular to the direction of movement, with Motion Inertia enabled, please ensure that the Scene Scale is reasonable considering the type of effect being simulated. Other possible solutions in case tweaking the scale is not possible are to either increase the Steps Per Frame, or to reduce the Cell Size of the Simulator.

Liquid artifacts usually appear when the liquid particles move a great distance between frames. Increasing the Scene Scale or the Steps Per Frame allows them to stabilize, which in turn keeps the surface smooth.

Gravity | grav, gmul – Phoenix Gravity makes the liquids fall down and makes fire rise up. The Gravity option is a multiplier, so using the default 1.0 will make it behave like real world gravity, setting it to 0.0 will disable its effect completely, and you can also use negative values, which will inverse the gravity effect.

Anchor
InitialFillUp
InitialFillUp
Initial Fill Up | initfillflevel – When enabled, the container is filled up with liquid when the simulation starts. This option determines the fill-up level, measured in % of the vertical Z size of the Grid. For liquid simulations using Confine Geometry, you can enable Clear Inside on the geometry and liquid will not be created at simulation startup in the voxels inside the geometry.

UI Text Box
typeinfo

The liquid created through the Initial Fill Up option will be initialized with the values set for the Default RGB and Default Viscosity parameters below.

Anchor
FillupForOcean
FillupForOcean
Fill Up For Ocean | oceanfill – Changes the Open Container Walls of the Simulator so they would act like there is an infinite liquid volume beyond them. Pressure will be created at the Simulator's walls in order to support the liquid, and if the surface of a wall below the Initial Fill Up level, or the bottom, gets cleared from liquid during simulation, new incoming liquid would be created. You can also animate the Simulator's movement or link it to a moving geometry, and it would act like a moving window over an ocean that stays in place. This way you can simulate moving ships or boats that carry their Liquid Simulator along with them as they sail into an ocean, so you don't need to create one huge long Simulator along their entire path.

In order to eliminate air pockets between Solid geometry and the liquid mesh, this option will automatically set all Solid voxels below the Initial Fill Up level to contain Liquid amount of 1, even if they don't contain any Liquid particles. If you don't want this effect, enable Clear Inside from the Chaos Phoenix Per-Node Properties of the Solid geometry. See the Fill Up For Ocean and Clear Inside example below.

UI Text Box
typewarning

All Simulator walls must be set to Open from the Grid rollout for Fill Up For Ocean to take effect.

Anchor
SPF
SPF
 Steps Per Frame | spf – Determines how many calculations of the simulated grid are performed between two consecutive frames of the timeline.

UI Text Box
typenote

One of the most important parameters of the Simulator, with significant impact on quality and performance. To understand how to use it, keep in mind that the simulation is a sequential process and happens step by step. It produces good results if each simulation step introduces small changes, but it's also a trade-off between performance and detail, as described below.

For example let's take an object that is hitting the liquid surface with high speed. If at the first step the object is far away from the water and at the second step, the object is already deep under the water - the result won't look good. You have to introduce intermediate steps until the changes of each step get small enough. The Steps Per frame option creates these steps within each frame. A value of 1 means that there are no intermediate steps and each step is exported into the cache file. A value of 2 means that there is one intermediate step, i.e. each second step is exported to the cache file while the intermediate steps are just calculated, but not exported.

Signs that the Steps Per Frame need to be increased are:

  • Liquid simulations have too many single liquid particles.
  • Liquid simulations are torn and chaotic.
  • Liquid simulations of streams have steps or other periodical artifacts.
  • Fire/Smoke simulations have artifacts that produce a grainy appearance.

More often than not, those issues will be caused by the simulation moving too quickly (e.g. the emission from the source is very strong or the objects in the scene are moving very fast). In such cases you should use a higher SPF.

Keep in mind that higher Steps Per Frame decreases the performance in a linear way, i.e. if you increase the SPF twice, your simulation will go twice as slow. However, the quality does not have a linear relation to the SPF. Each simulation step kills fine details, and thus for maximum detail it's best to use the lowest possible SPF that runs without any of the issues mentioned above. For additional information, please refer to Phoenix Explained.

Time Scale | timescale – Specifies a time multiplier that can be used for slow motion effects. For more information, see the Time Scale example below.

UI Text Box
typenote

In order to achieve the same simulation look when changing the Time Scale, the Steps Per Frame value must be changed accordingly. For example, when decreasing the Time Scale from 1.0 to 0.5, Steps Per Frame must be decreased from 4 to 2. All animated objects in the scene (moving objects and sources) must be adjusted as well.

Time Scale different than 1 will affect the Buildup Time of Particle/Voxel Tuners and the Phoenix Mapper. In order to get predictable results you will have to adjust the buildup time using this formula:
Time Scale * Time in frames / Frames per second

Default RGB | lq_default_rgb - The Simulator is filled with this RGB color at simulation start. The Default RGB is also used to color the fluid generated by Initial Fill Up, or by Initial Liquid Fill from the Chaos Phoenix Per-Node Properties of a geometry - both of these options create liquid only at the start of the simulation. During simulation, more colors can be mixed into the sim by using a Phoenix Liquid Source with RGB enabled, or the color of existing fluid can be changed over time by using a Phoenix Mapper. If a Phoenix Liquid Source does not have RGB enabled, it also emits using the Default RGB value.

UI Text Box
typewarning

The RGB Grid Channel has to be enabled in the Output Rollout for this parameter to take effect.

RGB Diffusion | rgbdiff – Control how quickly the colors of particles are mixed over time during the simulation. When it's set to 0, each FLIP liquid particle carries its own color, and the color of each individual particle does not change when liquids are mixed. This means that if red and green liquids are mixed, a dotted red-green liquid will be produced instead of a yellow liquid. This parameter allows the colors of particles to change when the particles are in contact, thus achieving uniform color in the resulting mixed liquid. For more information, see the RGB Diffusion example below.

Anchor
Viscosity
Viscosity
Default Viscosity | lqvisc – Determines the default viscosity of the liquid. Viscosity means how thick the liquid is. Liquids such as honey, syrup, or even thick mud and lava need to be simulated with high viscosity. On the other hand, liquid such as water, beer, coffee or milk are very thin and show have zero or very low viscosity. The Default Viscosity value is used when no viscosity information for the emitted liquid is provided to the Simulator by the Source. Also note that the effect of the viscosity works more strongly with more Steps Per Frame, and also when the grid resolution is lower. Increasing the grid resolution or reducing the Steps Per Frame can make viscous liquid thinnerFor more information, see the Viscosity example below.

UI Text Box
typetip
  • All FLIP liquid particles are set to this viscosity value at simulation start. You should use higher viscosity for thicker liquids such as chocolate, cream, etc.
  • The Default Viscosity is also used for the fluid generated by Initial Fill Up, or by Initial Liquid Fill from the Chaos Phoenix Per-Node Properties of a geometry - both of these options create liquid only at the start of the simulation.
  • If a Phoenix Liquid Source does not have Viscosity enabled, it emits using the Default Viscosity value.
  • During simulation, liquids of variable viscosity can be mixed into the sim by using a Phoenix Liquid Source with Viscosity enabled.
  • The Viscosity Grid Channel export has to be enabled in the Output Rollout for variable viscosity simulations to work.
  • The viscosity of existing liquid can be changed over time by using a Phoenix Mapper in order to achieve melting or solidifying of fluids.
  • You can shade the liquid mesh or particles using the fluid's viscosity with the help of the Phoenix Grid Texture or Particle Texture
  • It's important to note that using viscosity does not automatically make the liquid sticky. For example, molten glass is viscous, but not sticky at all. Stickiness can be enabled explicitly from the Wetting parameters section. If Stickiness is not enabled, even the most viscous fluid would slide from the surfaces of geometries or from the jammed walls of the Simulator.

Viscosity Diffusion | viscdiff -  Phoenix supports sourcing of fluids with different viscosity (thickness) values. This parameter specifies how quickly they blend together. A low value will preserve the distinct viscosities, while a high value will allow them to mix together and produce a fluid with a uniform thickness.

Non-Newtonian |  nonnewt – Modifies the viscosity with respect to the liquid's velocity to overcome the conflict between viscosity and wetting, where a high viscosity of real liquids prevents wetting. Non-Newtonian liquids are liquids that behave differently at different velocities. This parameter accounts for this behavior by decreasing the viscosity in areas where the liquid is moving slowly and retains a higher viscosity where the liquid is moving quickly. For example, to cover a cookie with liquid chocolate, high viscosity is needed in the pouring portion of the motion to obtain the curly shape of the chocolate as it lands on the cookie and begins to settle down. On the other hand, a smooth chocolate is needed to settle in over the cookie without roughness and holes. If the viscosity is high enough, the chocolate might look right during the pouring and settling motions but won't settle in to form a smooth thin layer over the cookie. This parameter decreases the viscosity where the liquid is moving slowly (over the surface of the cookie) while keeping the faster-moving stream tight and highly viscous. For more information, see the Non-Newtonian example below.

Droplets Surfing | dsurf – This parameter affects the liquid and the splash particles, controlling how long a particle hovers on the surface before it merges with the liquid. The parameter is used mostly in ocean/wave simulations. For more information, see the Droplets Surfing example below.

Column
width5%

 

Column
width35%40%

 

Anchor
InternalForcesExample
InternalForcesExample

...

Surface Tension

...

Section
Column
width60%55%

Strength | lqsurft – Controls the force produced by the curvature of the liquid surface. This parameter plays an important role in small-scale liquid simulations because an accurate simulation of surface tension indicates the small scale to the audience. Lower Strength values will cause the liquid to easily break apart into individual liquid particles, while higher values will make it harder for the liquid surface to split and will hold the liquid particles together. With high Strength, when an external force affects the liquid, it would either stretch out into tendrils, or split into large droplets. Which of these two effects will occur is controlled by the Droplet Breakup parameter. For more information, see the Surface Tension example below.

Droplet Breakup | lqstdropbreak – Balances between the liquid forming tendrils or droplets. When set to a value of 0, the liquid forms long tendrils. When set to a value of 1, the liquid breaks up into separate droplets, the size of which can be controlled by the Droplet Radius parameter. For more information, see the Droplet Breakup example below.

Droplet Radius | lqstdroprad – Controls the radius of the droplets formed by the Droplet Breakup parameter, in voxels. This means that increasing the resolution of the Simulator will reduce the overall size of the droplets in your simulation.

UI Text Box
typewarning

 Increasing the Droplet Radius can dramatically slow down the simulation. Please use it with caution.

Column
width5%

 

Column
width35%40%

 

Anchor
SurfaceTensionExample
SurfaceTensionExample

...

UI Text Box
typeinfo

Simulation of wetting can be used in rendering for blending of wet and dry materials depending on which parts of a geometry have been in contact with the simulated liquid. Wetting can also change the behavior of simulated viscous liquid and make it stick to geometries.

The wetting simulation produces a particle system called WetMap. It can be rendered using a Particle Texture map which blends between a wet and a dry surface material.

Section
Column
width60%55%

Wetting wetting – Enables the wetting simulation. The liquid will leave a trail over the surfaces of bodies it interacts with.

Consumed Liquid lq2wet – Controls how many liquid particles disappear when creating a single wetmap particle. The main purpose of this parameter is to prevent long visible tracks from being left by a single liquid particle. For more information, see the Consumed Liquid example below.

Drying Time (sec) | drying – Controls the drying speed in seconds. The WetMap particles are born with a size of 1, and if they are in an air environment, the size decreases until it reaches zero after the time specified with this parameter.

Sticky Liquid | wetdyn – This option produces a connecting force between the WetMap particles at the geometry surface and nearby liquid particles, when the liquid particles have at least a little Viscosity. For more information, see the  Sticky Liquid example below.

UI Text Box
typenote

Geometry transforming or deforming at a high velocity may cause some or all of the Wetting particles stuck to it to disappear. To resolve this, dial up the Steps Per Frame parameter from the Dynamics tab of the Simulator.

Column
width5%

 

Column
width35%40%

 

Anchor
consumedLiquid
consumedLiquid

...

UI Text Box
typeinfo

The Active Bodies simulation currently supports interaction between scene geometry and the Phoenix Liquid Simulator. When an object is selected as an Active Body, the simulation both influences and is influenced by the Active Body's movement. Mutual interaction between the Active Bodies themselves is not supported yet. Interaction between Active Bodies and the Phoenix Fire/Smoke Simulator is not supported.

For in-depth information on Active Bodies, please check the Active Bodies Setup Guide.

Section
Column
width60%55%

Active Bodies | use_activeBodySolverNode – Enables the simulation of Active Bodies. 

Active Body Solver | activeBodySolverNode – Specifies the Active Body Solver node holding the objects to be affected by the Phoenix Simulation. 

Column
width5%

 

Column
width35%40%

 

Texture UVW

...

UI Text Box
typeinfo

The main purpose of the Texture UVW feature is to provide dynamic UVW coordinates for texture mapping that follow the simulation. If such simulated texture coordinates are not present for mapping, textures assigned to your simulation will appear static, with the simulated content moving through the image. This undesired behavior is often referred to as 'texture swimming'.

UVW coordinates are generated by simulating an additional Texture UVW Grid Channel which has to be enabled under the Output rollout for the settings below to have any effect.

The custom UVW texture coordinates can be used for advanced render-time effects, such as recoloring of mixing fluids, modifying the opacity or fire intensity with a naturally moving texture, or natural movement of displacement over fire/smoke and liquid surfaces. Some examples uses are:

  • Increasing the detail of Fire/Smoke simulations at render time by adding displacement which moves along with the fluid.
  • Increasing the detail of Fire/Smoke simulations at render time by modulating the opacity of the smoke, the smoke color, or the fire color and intensity with noise maps which move along with the fluid.
  • Re-coloring of Fire/Smoke or Liquid simulations at render time, after the simulation is complete.
  • Transporting images or texture color details with Fire/Smoke or Liquid simulations.

The Texture UVW channel values represent the UVW coordinates of each Cell in the Simulator, with a range of [ 0 - 1 ]. The channel is initialized when a simulation is started in one of two ways:

  1. By inheriting the UVs from the source geometry, when Inherit TexUVW from Geom is enabled on the Phoenix Source. The UVW channel will be based on the UVs of the emission geometry. This option is useful when simulating melting objects – textures assigned to the Volumetric Shader (for Fire/Smoke simulations) or the material (for Liquid simulations) will be carried by the simulation.
  2. When inheriting of UVs is disabled on the Source - depending on the position of the emitting object in the Simulator's bounding box. If Grid rollout → Adaptive Grid is enabled, the Texture UVW coordinates in expanded voxels beyond the initial grid will be greater than one if the grid is expanding in a positive direction (+X, +Y, +Z), and less than zero otherwise. This means that textures assigned to simulations using the Adaptive Grid feature will be automatically tiled/repeated as many times as the final size of the Simulator is larger than its initial size.
Section
Column
width60%55%

Interpolation texuvw_interpol_influence – Blends between the UVW coordinates of the liquid particle at time of birth and its UVW coordinates at the current position in the Simulator. When set to 0, no interpolation will be performed - as a consequence, textures assigned to the fluid mesh will be stretched as the simulation progresses. This is best used for simulations of melting objects. When set to 1, the UVW coordinates of the fluid mesh will be updated with a frequency based on the Interpol.Step parameter - this will essentially re-project the UVWs to avoid stretching but cause the textures assigned to the fluid to 'pop' as the re-projection is applied. If you intend to apply e.g. a displacement map to a flowing river, set this parameter to a value between 0.1 and 0.3 - this will suppress both the effects of stretching and popping. See the Interpolation example below.

Interpol. Step | texuvw_interpol_step – Specifies the update frequency for the UVW coordinates. When set to 1, the UVWs are updated on every frame, taking into account the Interpolation parameter. See the Interpolation Step example below.

Column
width5%

 

Column
width35%40%

 

 

Anchor
interpolation
interpolation

...