Fire/Smoke

  1. Simple fire

  2. Heavy smoke

  3. Slow moving

  4. Colored fire

  5. Adaptive grid

  6. Fuel and burning

  7. Emit only while moving

  8. Maya fields

  9. DMM integration

  10. Particle sources

  11. Particle smoke

  12. Instancer from particle group

  13. Dissipation

  14. Void object

  15. Wavelet turbulence

  16. Start from a custom frame state

  17. Additional lights

  18. Render with true GI

  19. Render elements


Liquids

  1. Simple liquid

  2. Viscous liquid

  3. Liquid inside a glass

  4. Foam and splashes

  5. Foam and splashes on second pass

  6. Cascade without velocity

  7. Cascade with velocity


Simple fire

  1. Create PhoenixFD Simulator.

  2. Create PhoenixFD Source.

  3. Create a polygon object (polygon sphere for example) inside the simulator.

  4. Select the source node and inside the Source Object rollout click the Edit Object Set button.

  5. Inside the Relationship Editor, select the Object Set of the source on the left, and the polygon object on the right.

  6. Select the simulator. Start the simulation using the shelf button or by clicking the Start button in the Simulation rollout.

  7. You can render the result while simulating using the normal or RT renderer.

  8. The progress of the simulation will be shown on the top of the Simulation rollout. To stop the simulation before it's finished, click the shelf button again or click the Stop button in the Simulation rollout.

Samples phx_simple.ma | phx_simple_envfog.ma | phx_nuke.ma | phx_rocket.ma


Heavy smoke

  1. Start with the Simple fire.

  2. Go to the source and decrease the Temperature bellow 300K. This will make the emitted fluid heavier than the empty cells.

  3. Adjust the amount of Smoke that will be emitted.

  4. Go to the simulator and make sure that Uniform Density in the Simulation rollout is turned off.

  5. Make sure the Smoke is checked in the Output section.

  6. If the emissive component is not needed for rendering, uncheck the Temperature in the same section.

  7. Start the simulation.

Samples phx_heavysmoke.ma | phx_finesmoke.ma


Slow moving

  1. Start with the Simple fire.

  2. Go to the simulator and decrease the SPF Lower Limit in the Simulation rollout, and Time Scale in the Dynamics rollout to values bellow 1 (0.5 for example).

  3. Optionally change the Conservation Method in the Simulation rollout to Slow Moving.

  4. Optionally add more randomization from Dynamics or create PhoenixFD Turbulence node.

  5. Start the simulation.

Samples phx_heavysmoke.ma


Colored fire

  1. Start with the Simple fire.

  2. Go to the simulator and turn on the UVW in the Output section.

  3. In the Emission rollout, assign a new PhoenixFD Texture and turn on Modulate.

  4. Set the emission color to plain white, and decrease the luminance (10 for example). We will use the texture to control the intensity.

  5. Go to the created texture and set the proper name of the simulator in the Simulator Node attribute.

  6. Choose UVW for the Channel and turn on Auto Mapping.

  7. Increase the intensity of the texture from the Color Balance, Color Gain (10 000 for example).

  8. Go to the source, turn on the emission of UVW and set to Color.

  9. To emit color on per cell basis, assign a new texture in the slot bellow. Alternatively, a color can be specified on per source basis (phx_paints_noscript.ma) or set via a script (phx_paints.ma).

  10. The same texture can be reused to control the discharge amount.

  11. Start the simulation.

Samples phx_multicolor.ma | phx_multicolor2.ma | phx_paints.ma | phx_paints_noscript.ma


Adaptive grid

  1. Start with the Simple fire.

  2. Decrease the grid size to a relatively small dimensions which contains the emission objects.

  3. Set the Adaptive Grid to the channel that represents the most important feature which must be kept inside the grid. Usually this is the channel used for transparency.

  4. Choose a proper Threshold for the grid adaptation. Lower values will cause the grid to expand more, and higher values - less. Usually this value correlates with the transparency diagram and Skip Shading Level.

  5. Choose a method for the grid allocation. Use Preallocation if you intend to simulate a grid that will use more than half of your free memory. Disable the preallocation if the grid is not big, and you don't have an idea how much memory to preallocate.

  6. Tweak the memory allocation limit. You can choose between size in millions of cells, and percentage of the free memory.

  7. Choose the axis along which the simulation may grow. If the particular boundary condition is set to Open, the grid can grow in that direction.

  8. Start the simulation.

Samples phx_rotate.ma | phx_rocket.ma


Fuel and burning

  1. Start with the Simple fire.

  2. Go to the simulator and turn on the Fuel in the Output section.

  3. Enable the burning from the Fuel section and tweak the parameters.

  4. Go to the source and turn on the Fuel emission in the Fluid Discharge section or use a script to set the fuel channel.

  5. Start the simulation.

Samples phx_propagate.ma | phx_burnliquid2.ma


Emit only while moving

  1. Start with the Simple fire.

  2. Animate the emission object(s).

  3. If the vertices of the object are animated, go to the simulator and turn on Object Velocity in the Scene Interaction section.

  4. Go to the source and create a new modifier under the Discharge Modifiers.

  5. Set the Source to Speed, Affect to Discharge and Space to Grid.

  6. Tweak the Offset and Scale of the diagram if a better control is needed. You can use the preview to investigate the speeds inside the simulator.

  7. Make the value at position zero in the diagram also zero. This will disable the emission if the object is not moving. Tweak more the diagram for more complicated emission pattern, i.e. increasing the emission with the speed.

  8. Start the simulation.

Samples phx_modulate_emission.ma


Maya fields

  1. Start with the Simple fire.

  2. Add a field by your choice on the scene. By default it will interact automatically with the simulator. To control the affected simulators, see the Scene Interaction section.

  3. If the field is not using complicated input connections (like curves), turn on the Multi-threaded option in the same section.

  4. If the field is with relatively constant magnitude over time, and the simulator is not moving, the number of evaluations can be decreased using the Fields Calculation option. In other situations this option can still be used, however the result will not be accurate.

  5. Start the simulation.

Samples phx_vortex.ma


DMM integration

  1. Create the DMM objects.

  2. From the asset manager select the DMM Object Node, and turn on the Start Splintered option. Without this option, Phoenix FD will be unable to calculate properly the velocity of the objects when they start to break.

  3. Create PhoenixFD Simulator and PhoenixFD Source as usual.

  4. Select the simulator and turn on Object Velocity in the Scene Interaction section.

  5. Make sure that only the outputSurfaceShape of the objects is visible, or select this shape manually in the Scene Interaction section and turn off the Exclude List.

  6. You may need to turn of the Skip Dynamics Before Start Frame if DMM is not using a cache.

  7. Tweak the discharge parameters and modifiers of the source to achieve the desired effect when breaking.

  8. Start the simulation.

Samples phx_pillar.ma


Particle sources

  1. Create PhoenixFD Simulator.

  2. Create PhoenixFD Source.

  3. Create an emitter and tweak the parameters in order to produce particles inside the simulator.

  4. Select the source node and inside the Source Object rollout click the Edit Object Set button.

  5. Inside the Relationship Editor, select the Object Set of the source on the left, and the particle system on the right.

  6. Particles are considered non-solid objects. This means that they can be used in one of two modes - as a brush, or to inject fluid. This is controlled via the If Not Solid option.

  7. If the per particle radius must be taken into an account, turn on the Use Particle Size option.

  8. To add a per particle variation in the discharge parameters, attach particleSamplerInfo textures in the corresponding slots.

  9. Start the simulation.

Samples phx_pfsource.ma


Particle smoke

  1. Start with the Simple fire.

  2. Select the simulator and turn off all channels in the Output section. If you want to use motion blur, turn on the Velocity channel.

  3. Disable the rendering from the Rendering section.

  4. Turn on Other Particles in the Preview section.

  5. Select the source, and in the Fluid Discharge disable the Smoke, and enable the Particles.

  6. Make sure that the Particle Type is set to Drag.

  7. Start the simulation. You must be able to see the particles in the viewport.

  8. Create PhoenixFD Foam.

  9. Select the foam and click Edit Particle Systems.

  10. Inside the Relationship Editor, select the Particle Systems set on the left, and the particle group of the simulator on the right (it must start with "PG_PhoenixFDSimulator...").

  11. Turn on the As Fog If Bellow.

  12. Decrease the Size Multiplier a bit. If the size is too big, you will get huge rendering times and will loose detail.

  13. Decrease the Size Variation to make all particles with the same size.

  14. Tweak the Fog Multiplier to get the expected opacity.

  15. Decrease the Fog Resolution to increase the detail. Particles represent much more detail then the resolution of the grid.

  16. If the simulation exports the velocity, the Motion Blur can be turned on to achieve more smooth look.

  17. Render.

Samples phx_finesmoke.ma


Instancer from particle group

  1. Start with the Particle smoke.

  2. Select the simulator, and turn off Other Particles in the Preview section.

  3. From the Input section, find the particle group you want to use with the Instancer.

  4. Click the arrow on the right, and the Particle Group will be selected.

  5. Turn on the Create Particle System option. Maya particle shape will be created under the transform of the simulator.

  6. Create the Instancer normally from the created Maya particle system.


Dissipation

  1. Start with the Simple fire.

  2. Create PhoenixFD Mapper.

  3. Turn off the Initializer option.

  4. Select the Channel to dissipate.

  5. Make sure the Map is using black color.

  6. Optionally use the Mask texture to specify per cell weight of the dissipation.

  7. Tweak the Time Constant option to control the speed of the dissipation. Smaller values increase the dissipation and vice versa.

  8. Start the simulation.

Samples phx_dissipation.ma | phx_rotate.ma


Void object

  1. Start with the Simple fire.

  2. Create the geometry object that must make the fluid content disappear.

  3. Create a new PhoenixFD Source.

  4. Set its Discharge to 100 and set the channels you want to remove to 0 (or 300 if it's the temperature).

  5. Disable the emission of Velocity.

  6. Set If Not Solid to Brush.

  7. Inside the Source Object rollout click the Edit Object Set button.

  8. Inside the Relationship Editor, select the Object Set of the source on the left, and the geometry object on the right.

  9. Start the simulation.

Note To prevent fluctuations, use constant SPF or decrease the maximal advection step.


Wavelet turbulence

  1. Start with the Simple fire.

  2. Select the simulator, and from the Output section enable the export of the Velocity channel.

  3. Enable the export of the Wavelet channel. If you miss this step, still the Simple Interpolation method can be used.

  4. Start the simulation. You can wait the simulation to finish and see the result, or start another Maya instance and work there in parallel.

  5. Go to the Resimulation section and turn on Resimulate.

  6. If you are working inside another Maya instance, turn on the Cache Waiting option. This will make sure that you will wait the input cache to become ready.

  7. Tweak the parameters inside the Resimulation section. If you want to change the parameters in the other sections, it's a good idea to duplicate the simulator and use the new one just for resimulation. You will need also to disable the interaction between the two simulators and change the input resimulation path to point the output of the original simulator.

  8. In the Input section, change the Path to ($resimoutput).

  9. Start the simulation.


Start from a custom frame state

  1. Start with the Simple fire.

  2. Simulate until you have the desired initial frame and stop the simulation. If you already have the frame from another simulator, skip this step.

  3. Click the Load button and select the desired frame. The simulation will start.


Additional lights

  1. Start with fire simulation.

  2. Select the simulator and open the Rendering section. From the bottom open the Emission and find the Additional Lights

  3. Set the Count attribute to the number of desired lights. For animation it's recommended to use a couple of hundred lights to prevent flickering.

  4. If you have more than 20-30 lights, it's a good idea to use DMC Sampling.

  5. Tweak the Power Multiplier to get the desired emission intensity.

  6. The Cut Off Threshold and DMC Subdivs can be used to increase the rendering speed.

Samples phx_simple.ma


Render with true GI

  1. Start with fire/smoke simulation.

  2. Select the simulator and open the Rendering section. From the bottom open the Diffuse section

  3. Change the Scattering to Enabled.

  4. Make sure you use Particle Mode Secondary Bounces since if it's off, the rendering time will increase.

  5. Make sure you don't have emission lights since they will disable the true GI. The GI will take care for the emission.

  6. Setup the VRay GI settings and render.


Render elements

Render elements are added in the standard way from the VRay Render Settings. The following channels are supported:

  1. Alpha

  2. Atmospheric Effects

  3. Raw Light

  4. Lighting

  5. Diffuse

  6. Self Illumination

  7. Velocity

  8. Material ID


Simple liquid

  1. Create PhoenixFD Simulator.

  2. Create PhoenixFD Source.

  3. Create a polygon object (polygon sphere for example) inside the simulator.

  4. Select the source node and inside the Source Object rollout click the Edit Object Set button.

  5. Inside the Relationship Editor, select the Object Set of the source on the left, and the polygon object on the right.

  6. Change the Temperature. to 1, and disable the emission of Smoke.

  7. Select the simulator and adjust the boundary conditions in order to hold the water inside the simulator.

  8. In the Liquids section, change the Liquid attribute to Temperature.

  9. In the Simulation section, set the Conservation Quality to a value above 20.

  10. In the Dynamics section, set the Vorticity to 0.

  11. In the Output section, disable the export of Smoke.

  12. In the Preview section, disable the Natural attribute, and set the Temperature range between 0.5 and 1.

  13. In the Render/Effects Channel, set the Effect Channel to temperature and the Surface Level to 0.5.

  14. In the Render/V-Ray section, turn on the Geometry Mode and the Solid Mode.

  15. Right click on the simulator and assign water material.

  16. Start the simulation.

Samples phx_fountain.ma | phx_paints.ma | phx_groove.ma


Viscous liquid

  1. Start with Simple liquid.

  2. Select the simulator and from Simulation section set the Conservation Quality to a value above 40.

  3. Set the Advection Method to Forward Transfer.

  4. In the Liquids section, set the Viscosity to 0.9.

  5. Start the simulation.

Samples phx_viscosity.ma


Liquid inside a glass

  1. Start with Simple liquid.

  2. Create the glass geometry inside the simulator.

  3. Select both the simulator and the glass, and from the Phoenix menu click on Set Render Gizmo.

  4. Select the simulator and from the Rendering/Render Gizmo, turn on Invert Gizmo.

  5. In the Scene Interaction section, set the Object Voxels to Inscribed.

  6. If the simulator has foam, select both the PhoenixFD Foam node and the glass, and from the Phoenix menu click on Set Glass Gizmo.

  7. Start the simulation.

Samples phx_beer.ma


Foam and splashes

  1. Start with Simple liquid.

  2. If the foam/splashes must be rendered with motion blur turn on the Velocity export.

  3. In the Liquids section, turn on Enable Foam and Enable Splashes.

  4. Tweak the Size parameters in relation to the simulator size. This size can also be tweaked after the simulation from the PhoenixFD Foam node, but if you want to use B2B Interaction, it must be set properly here.

  5. Tweak the Birth Threshold parameters to increase and decrease the birth potential. It's better to start with big values, because you can get "explosion" of particles that can quickly fill the RAM.

  6. If the bubbles must preserve their volume (like in a beer), set the B2B Interaction to a couple of thousands.

  7. If the splashes must produce foam when they hit the surface, increase Foam On Hit.

  8. Create 2 PhoenixFD Foam nodes - one for foam, and one for splashes shading.

  9. For each foam node, click the Edit Particle Systems button, and inside the Relationship Editor, select the Particle Systems set on the left, and the respective particle group of the simulator on the right (they must be called something like "PG_PhoenixFDSimulator_Foam_0" and "PG_PhoenixFDSimulator_Splashes_0")..

  10. Set the respective rendering Mode for both foam nodes and optionally turn on the Motion Blur from the same section.

  11. In case of small foam particles, you can turn on the fog mode for all particles bellow a given size. This can speed up the rendering for huge amounts of particles.

  12. Start the simulation.

Samples phx_pool.ma | phx_surf.ma | phx_fountain.ma | phx_beer.ma


Foam and splashes on second pass

  1. Start with Simple liquid.

  2. Turn on the Velocity export.

  3. Simulate.

  4. Go to the Resimulation section and turn on Resimulate.

  5. Set Affect to Particles.

  6. For the fastest simulation of foam/splashes set the Conservation Quality to 0. If the scene is more complicated and have fast moving objects, try increasing the quality to 6-10. This may give a better result.

  7. In the Input section, change the Path to ($resimoutput).

  8. Do the steps from Foam and splashes.


Cascade without velocity

  1. Start with Simple liquid.

  2. Create one or more additional PhoenixFD Simulator and PhoenixFD Source nodes. Choose carefully how to arrange them.

  3. The simulators must overlap each other with 3-4 cells.

  4. Each simulator must interact only with it's corresponding source.

  5. Set the Temperature of all new sources to 0.001 and disable the Smoke.

  6. Add to the Object Set only the simulator that will be simulated before simulating the one that is assigned this source to.

  7. Make sure the If Not Solid is set to Inject.

  8. Do the simulation of the main simulator.

  9. Do the simulation of each consequent simulator.

Samples phx_cascade.ma


Cascade with velocity

  1. Start with Simple liquid.

  2. Create one or more additional PhoenixFD Simulator and PhoenixFD Source nodes. All simulator must have the same Cell Size.

  3. The simulators must overlap each other with 3-4 cells. The cells must overlap perfectly for the best result.

  4. Each simulator must interact only with it's corresponding source.

  5. Turn on the Velocity export for each simulator that will be used as a source.

  6. Disable the Smoke and set the If Not Solid is set to Transfer

  7. Add to the Object Set only the simulator that will be simulated before simulating the one that is assigned this source to.

  8. Do the simulation of the main simulator.

  9. Do the simulation of each consequent simulator.

  10. After simulating you will have overlapping cells with exactly the same content. For best result use a Render Gizmo, to remove these cell from one of the simulators. The precision is essential to have seamless surface.

Samples phx_cascade2.ma | phx_cascade_smoke.ma