In this section we will describe the rendering of the grid's content and how it is controlled. The rendering process in Phoenix FD is separated from the simulation, but for easier operating it is performed by the same object that performs the simulation. However, this is true only for the grid's content, not for the particles contained in the cache file. If you want to render the particle content, please create a PHXFoam object and pick the simulator in the particle system slot.

Phoenix FD uses several different render techniques:




Jittering (MXS: jitter) - when rendering a volumetric object some artifacts can occur due to the regular ray marching step. To prevent this a small random offset can be added using this checkbox.

Step (MXS: rendstep) - the ray marching step. This parameter is used for the volumetric rendering, the isosurface rendering and the mesh rendering ignore it.

Fade out (MXS: softb) - Phoenix FD shader has the capability of making the content near to the grid's boundaries more transparent. In this way the undesired visualization of the edges is suppressed. This parameter controls how far from the boundaries the process should start.

Sampler type (MXS: sampler) - the sampling method determines how to calculate the values in the points with non-integer coordinates.



Gizmo (MXS:usegizmo,gizmo) - specify a geometry that will clip the rendering. This parameter is not supported by the mesher.


Invert gizmo (MXS:invgizmo) - enable the shading only outside the gizmo geometry. This is not the same as a gizmo with inverted geometry, because any rays that do not intersect the gizmo will be shaded, too.


Surface section


This section describes an implicit isosurface that is used in many parts of the rendering, mostly to render liquids.

Based on (MXS: sarg) - which physical channel is used as isosurface's field.


Texture (MXS: stex) - if the source channel is set to Texture, this slot specifies the texture.

Surface level (MXS: surflevel) - an isosurface is a set of points where the value of the field is equal to certain constant, this parameter is the constant itself.

Invert volume (MXS: solidbelow) - by default the values above the surface level are considered internal, this options swaps inside and outside.


Render as mesh (MXS: mesher) - if this option is enabled, the surface is converted into mesh and is rendered as mesh, allowing to render liquids without V-Ray.


Ocean (MXS: ocean, oceanlevel) - option of the mesher that extends the mesh with infinite surface, giving in account the camera viewing frustum. The surface is built at level specified in percentages of the grid height. This option does not add waves by default, use the displacement option with ocean texture to add them. WARNING! It's strongly recommended when using this option to set the V-Ray default geometry parameter to Static!


Skyline subdiv (MXS:meshsubdiv) - used with the Ocean option. It determines how many vertices will be generated for each pixel of the image, when generating the far areas of the surface. Like V-Ray subdivisions, the square of the value is used, i.e. if you increase the subdivisions twice the vertices count will grow four times.



Skyline sibdiv=2 Skyline subdiv=8




Mesh smooth (MXS: smoothmesh) - removes the roughness of the mesh. The bigger the value, the slower the mesh builds.


Displacement section


The displacement is a technique intended to add detail to the simulation during the rendering. The idea of the displacement is similar to the usual geometry displacement, in general we have to sample a texture and shift the point in a direction at a distance determined by the texture.


Enable (MXS: displacement, displmul) – enables the displacement and allows you to specify a multiplier.


Type (MXS: displ2d) - choses between three displacement techniques


The difference between surface driven and vector displacement from artistic point of view is that the vector displacement can produce more complicated surfaces, for example the wave texture in vector mode produces waves that have a convex back side and a concave front side, in contrast with the symmetrical forms produced by the surface driven displacement.

The type parameter is ignored when rendering as mesh and Vector displacement is applied regardless of its value.


Surface driven displacement Vector displacement



Map (MXS: displ2) – allows you to specify the displacement map.



V-Ray group - this group affects the rendering under V-Ray.

Geometry mode (MXS: geommode) – when checked the object is rendered as geometry, not as an atmosphereic. This enables some techniques that are unavailable in atmosphere mode.

Heat haze (MXS: heathaze, hhfactor) – traces the ray changing its direction according to the gradient of the effects channel. Value=1 corresponds approximately to the normal heat haze in air caused by the temperature. If smoke or other channel is selected as source, you have to use a bigger multiplier to achieve a visible result.

Solid mode (MXS: rendsolid) – enables solid mode.

Colors and transparency - this button shows a floating dialog containing three parameter blocks - Fire, Smoke color and Smoke density. In Phoenix FD UI specific controls are used to represent the diagrams and gradients. The active commands are: