Versions Compared

Key

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

...

Meanwhile, the surface render modes generate a mesh surface, which is based on the channel specified in the Surface Channel parameter.

This is especially useful for liquid simulations, where by default, the Grid Temperature/Liquid Channel is exported during simulation, which enables the simulator to voxelize Liquid Particles into a Grid Channel. This way, Liquid Particles can be used to indirectly generate a liquid surface, that Unlike volumetric modes, surface render modes cause the Simulator to behave just as any regular geometry. Thus, a Smoke simulation can be rendered as a mesh using one of the surface render modes, such as Mesh, Isosurface, Cap Mesh or Ocean Mesh.The meshed liquid then behaves just like any regular geometry, meaning you can assign with a Maya or V-Ray materials material applied to the Simulatorit, and there is no need for a dedicated shader. The Rendering rollout also contains additional controls for this meshing process, to customize the appearance of the surfaceThis can be used to create more advanced effects, such as a freezing flame, cartoon-style smoke, or rendering fire as a liquid.

UI Text Box
typetip

Since Phoenix is very flexible, it also enables you to render liquid simulations using a volumetric render mode, to create more advanced types of effects.

Similarly, fire or smoke simulations can be rendered as a polygon mesh using a surface render mode, with a Maya or V-Ray material applied to create effects such as a freezing flame, cartoon-style smoke, or rendering fire as a liquid.

warning

Note that the Fire/Smoke Simulator’s Rendering rollout controls do not apply to any particles contained in the cache file.

If you want to render the particle content of the Simulator (e.g. Foam, Splashes, or Drag particles), create a Particle Shader object and add the Simulator to it, so the Particle Shader can read the cache data loaded by the Simulator. The Particle Shader can then shade the particles as either Points, Bubbles, Cellular, Splashes, or Fog

UI Text Box
typewarning

Secondary effect particles such as Foam, Splash, Mist and WetMap particles, as well as Drag particles emitted from a Fire Source, must be shaded using the Phoenix Particle Shader.

The Particle Shader can shade a specified Particle System as either Points, Bubbles, Cellular, Splashes, or Fog, depending on the mode you select. Note that Phoenix also provides you with the option to create nParticles from a Phoenix Particle Group, and apply a material.

For even more advanced control over the shading, you can use the Phoenix Grid Texture. It reads from the simulation’s Grid Channels to generate a procedural texture, which can then be used to shade the simulation wherever colors are needed. The Grid Texture can be used with the volume shader to color or modulate the opacity of Fire and Smoke, using any of the supported Grid Channels (Smoke, Speed, RGB, etc.).

It can also be plugged into the texture slots of a material. For example, if you want to mix together liquids with multiple RGB colors emitted from different Liquid Sources, the Grid Texture can be used to read and transfer the RGB colors to the Liquid mesh's material for shading.Similarly, a Phoenix Particle Texture can be used to read particles and color their positions. When used to read WetMap particles, it can act as a mask to blend between two materials, for example, a wet material and a dry surface material. This way, geometry covered by WetMap particles can appear wet, and the rest of the geometry can appear drycolors emitted from different Liquid Sources, the Grid Texture can be used to read and transfer the RGB colors to the Liquid mesh's material for shading.

UI Text Box
typenote

For a list of supported Render Elements, please check the V-Ray Render Elements Support page.

You may also check the Volumetric Rendering In-Depth guide for tips on speeding up the rendering of volumetric effects with V-Ray.

...

UI Text Box
typeinfo

Note that render settings are not stored within the caches themselves, so if you want to save your render settings to use with another simulator or project, you can do so from the Presets rollout.

...



 


Enable Rendering | render – Enables/disables the rendering of the simulator.

Render Presets... – Opens a menu for loading and saving different presets. The following options are available:

  • Default Phoenix Render Settings;
  • Fire/Smoke from FumeFX;
  • Fire/Smoke .vdb from Houdini;
  • Liquid .vdb from Houdini;
  • Fire/Smoke .vdb from Maya Fluids.

Anchor
RenderMode
RenderMode
Render Mode  | rendMode – Specifies the method for visualizing the grid content. For fire/smoke, you will want to select a Volumetric method. For liquids, select a geometry method.

Volumetric – Visualizes the content similar to a VRayEnvironmentFog. This method is used mostly for fire and smoke.

Anchor
GeometryMode
GeometryMode
Volumetric Geometry – This method requires V-Ray. It produces the same result as the Volumetric option by using procedural geometry made up from multiple transparent layers. Used when rendering fire/smoke for exporting deep images and render elements such as normals, velocity, multi matte, etc. which would not be available in Volumetric mode. For more information on which render elements are supported in Volumetric and Volumetric Geometry mode, see V-Ray Render Elements Support.

UI Text Box
typenote

Approximate and Approximate+Shadows options for the Scattering parameter in the Smoke color window are not supported in Volumetric Geometry mode.

For a complete list of the supported Render Elements in both Volumetric and Volumetric Geometry mode, please check the V-Ray Render Elements Support page.

Volumetric Heat Haze – This method requires V-Ray. It produces the same result as the Volumetric Geometry option, and also adds a heat haze effect when used with the Heat Haze parameter. Note that you might need to increase the Max depth of a VRayMtl with refraction in case it intersects with the Heat Haze shader.

Anchor
ImplicitSurface
ImplicitSurface
Isosurface – This method requires V-Ray. It produces a procedural isosurface without polygons at render time using the Surface section options. Compared to the Mesh mode, the result is always smooth but will take longer to render. In case in Mesh mode your mesh is too jagged and edgy, and smoothing it out is too slow or impossible, this means you should switch to Isosurface mode instead. 
Mesh – The content is converted into a mesh using the Surface section options. This mode is mostly used for liquids but can also be applied to thick smoke using a scatter material or to plumes of smoke to create effects such as large underwater bubbles. Depending on the renderer you are using or if you want to export the mesh to Alembic, you can change the Mesh Type under the Mesh rollout.
Anchor
OceanMesh
OceanMesh
Ocean Mesh
 – The grid content is extended to a flat area, fitting the camera's view.  In most cases, this mode is used with a displacement texture such as the Phoenix Ocean Texture.
Cap Mesh – Only the upper liquid surface is rendered. This mode can be used for swimming pools and other placid liquid surfaces.

UI Text Box
typenote

The ocean surface can be generated only when the liquid touches the sides and the bottom of the grid, which act as a container for the liquid. The detail of the mesh extension around the simulator depends on the camera resolution - for each pixel of the viewport or the rendered image, one or several polygons are generated, depending on the Ocean Subdivisions option.

Also note that if you use a material with fog color for the ocean mesh, and you have particles submerged below the ocean surface which you render using a Particle Shader, you need to also place a geometry that would serve as a bottom, or you could get flickering and darker rendering of the particles. For more info, see the Render as Geometry option of the Particle Shader.

 


Anchor
Step
Step
Step (%) | rendStep – Specifies the ray marching step of the camera rays as a percentage of the cell size. As the renderer traces rays through the Simulator, this value controls how often to read information from the grid. If this value is more than 100, some cells will start getting skipped and artifacts may appear. Usually you don't need to lower this below 90%, unless you use render curves or texture maps for the Fire or Smoke opacity or color - in these cases you might need to lower the step in order to capture the details which are smaller than a voxel, otherwise these details will either be skipped or will render very noisy. However, decreasing the step will make the render slower. This parameter is used when Render Mode is set to VolumetricVolumetric GeometryVolumetric Heat Haze or IsosurfaceSee the Step % example below.

...

Velocity TexturerendVelTexture – Specifies a custom texture used for motion blur when rendering Fire/Smoke simulations. The colors of the texture represent the velocity direction for each cell, similar to how Vector Displacement textures are evaluated. Every simulator cell receives a certain color from the texture, treats it as a direction vector and stretches the contents of the simulator along to produce motion blur. This parameter can be used with a V-Ray User Color texture for motion blur in a single direction(e.g. by setting the color to (0, 1, 0) for motion blur in the +Z axis), or any other Maya texture applied as a 3D projection. The texture overrides the Velocity grid channel even if available in the cache files. Note that the Y and Z components of the velocity vectors are flipped - they are sampled respectively from the Blue and Green color values of the texture.  


Example: Volumetric Motion Blur for Fire

...

Section
 
Column
width25%
5%

Column
width50%90%
maxLabel
Image slider
Panel
borderStylenone

Image Added

minLabelRay-traced
startIndex1

Grid-based Volumetric Motion Blur

Panel
borderStylenone

Image Added

Ray-traced Volumetric Motion Blur

Image Removed

Panel
borderStylenone

Image Added

Image Removed

No Volumetric Motion Blur


 
Column
width25%
5%


Example: Volumetric Motion Blur for Explosions

...

Section
 
Column
width25%
5%

Column
width50%90%
Grid-based
Image slider
Panel
borderStylenone

Image Added

Grid-based Volumetric Motion Blur

Panel
borderStylenone

Image Added

Ray-traced Volumetric Motion Blur

minLabelRay-traced
startIndex1
maxLabel

Panel
borderStylenone

Image Removed

Image Added

Panel
borderStylenone
Image Removed

No Volumetric Motion Blur


 
Column
width25%
5%


Anchor
renderStepJitter
renderStepJitter

...

Section
bordertrue
 
Column
width10%


Column
width40%


Step %
: 50

Column
width40%


Step %
: 150

 

 



 
Column
width10%


Example: Heat Haze

...

UI Text Box
typetip

Heat haze adds refraction at each ray-marching step through the volume. This only affects the camera's view. Heat haze will not affect shadows cast through a volume.

Section
bordertrue
 
Column
width10%


Column
width40%


Heat haze: 0

Column
width40%


Heat haze: 1

Column
width10%

 

...



Anchor
Surface
Surface

Surface

...

UI Text Box
typetip

This section controls the conversion of the grid content into geometry. If Render Mode is set to MeshOcean MeshCap Mesh or Isosurface, the Surface channel needs to be set and an appropriate Isosurface Level must be chosen from this section.

The controls in this section also denote the surface used in Gradient and Surface-driven displacement. This way it can affect all render modes, not just the surface modes.

The technique for generating the surface is based on the isosurface concept. The resulting surfaces are mostly used to render liquids, but can be used for smoke and fire as well to create effects like underwater bubbles, freezing fire, etc.

Section

...

Column

...

width

...

40%

Surface Channel | sarg – Specifies the channel that will define the surface of the fluid. It is used for solid rendering and displacement.

Texture - the values of a custom texture will define the liquid surface.
Liquid/Temperature 
- the Liquid/Temperature channel will define the liquid surface. Temperature is typically in the range 0-1 for Liquid simulations and 600-2000 for Fire / Smoke simulations.
Smoke 
- the Smoke channel will define the liquid surface. Smoke is typically in the range of 0-1 for Fire / Smoke simulations.
Speed 
- the Speed channel will define the liquid surface. Speed channel output has to be enabled for this to work. Speed is calculated as the length of the velocity vector for each voxel.  
Fuel 
- the Fuel channel will define the liquid surface. Fuel channel output has to be enabled for this to work.
Viscosity - the Viscosity channel will define the liquid surface. Viscosity channel output has to be enabled for this to work.  

Texture | rendEffectTex – If the Surface Channel is set to Texture, this slot specifies the texture. In Mesh, Ocean Mesh, Cap Mesh and Isosurface render modes, the selected map will completely replace the cache files that have been loaded, if any. For more information on texture mapping in Phoenix, please check the Texture mapping, moving textures with fire/smoke/liquid, and TexUVW page.

Isosurface Level | rendSurfLevel_x, rendSurfLevel_t, rendSurfLevel_s, rendSurfLevel_v, rendSurfLevel_f –  Allows you to specify a threshold value for the generation of the geometry surface. Grid cells below this value will be ignored. By default, the Isosurface Level is set to 0.5 and should only be modified if there is flickering in the generated geometry. Isosurface Level is used only in IsosurfaceMeshOcean Mesh and Cap Mesh Modes.

Invert Volume | rendInvertNorm – By default the values above the surface level are considered internal. When enabled, this option swaps the inside and outside.

Column
width60%
Image Added
UI Text Box
typenote

The proper value for the Isosurface level parameter depends on the numerical range of the surface channel. For example, Phoenix liquids are kept in the range of 0 to 1. A value of 0 means there is no liquid in a certain voxel, and a value of 1 means the cell is 100% full of liquid. Values in between indicate a certain mixture of air and liquid. For such cache files, an Isosurface level value of 0.5 is best for visualizing the surface between the air and liquid. Imported caches from Houdini, on the other hand, use positive and negative values to indicate whether a voxel is inside or outside the liquid volume, so a correct "halfway" Isosurface level value would be 0.0. For Phoenix smoke, the proper value is about 0.01, and for Phoenix temperature, which is in Kelvins, the value is several hundred. Please check the Grid Channel Ranges page for information about other grid channels.

Section
Column
width33%

Column
width33%

Column
width33%

Section
Column
width33%

Column
width33%

Column
width33%

Render Cutter

...

UI Text Box
typewarning

If using a Render Cutter for a liquid pouring into a glass or otherwise contained into another refractive object, you may need to set the Render Mode to Isosurface.  By default, the mode is set to Mesh which may produce artifacts in the rendered image.

Section
Column

...

width

...

40%

Use Cutter | rendUseGizmo – When enabled, rendering will occur only inside the selected geometric object's volume. If Fire Lights are enabled, only those inside the cutter will be rendered. Note that the Render Cutter will not work when the Render Mode is set to Volumetric Geometry.

Set Selected Object as Render Cutter - When a polygon mesh and a Phoenix Simulator are selected, the selected mesh will be used as the render cutter for the geometry generated by the simulator. 

Invert Cutter | rendInvGizmo – When enabled, rendering will occur only outside of the render cutter. This is not the same as a cutter with inverted geometry because any rays that do not intersect the cutter will be shaded as well.

Anchor
RendGizmo
RendGizmo
Cutter Geometry | rendGizmo – Specifies a polygon geometry that will clip the rendering only to inside its volume.

Column
width60%

Image Added