Table of Contents

This page provides general information about the Fire sub-section of the Rendering rollout of Chaos Phoenix.

Overview


This rollout controls the emissive (Fire) color of the volumetric shader, and the light emitted by the simulator. From here you can control the color and intensity of the emission.

There are different modes for shading the Fire, which affect whether the Fire and Smoke Opacity shading are linked together, emulating the physical laws of nature, or whether they should be controlled separately for additional flexibility.

There is also the Physically Based parameter, which lets you transition between a more physically correct appearance, giving a stronger brightness to the hot parts of the fire, or a more artistic looking result.

This customizability allows you to shade a variety of different types of fire, smoke and other volumetric scenarios, from candle flames to fireplaces, to cigarette smoke and massive explosions, as well as sci-fi content such as nebulae, and other effects entirely up to your imagination.

In the volume shader, there are two types of content diffuse and emissive. For simplicity's sake, we call the diffuse content Smoke and the emissive content Fire.

Diffuse (Smoke) needs external light in order to become visible, and also casts shadows. On the other hand, emissive (Fire) is visible even without being lit by lights. It also ignores their illumination, and does not cast shadows on itself.

Phoenix has different tools that help you to control how the emissive fire illuminates the smoke and the scene - see the Fire Lights sub-rollout for more details.

Fire and smoke also have their own Color and Alpha. Alpha is a synonym for opacity, and transparency is the opposite of opacity. The Fire's Color and Opacity, as well as the Smoke Color and Smoke Opacity, can be mapped to a physical Grid Channel from the simulation, using the Based on parameter.

The Based on parameter specifies the source channel that will be rendered, and is set independently for the Fire, Smoke Color, and Smoke Opacity respectively. This makes shading very flexible, so that you can even render a simulation's fire as smoke, and smoke as fire, depending on the channel you set the Based on parameter to for each.

The Fire rollout also contains a Color Gradient and Graph Diagram, to remap the Grid Channel data to render data. The Color Gradient remaps the Based on channel to a render color, to shade the color of the fire. The Graph Diagram remaps the Based on channel to render either Fire Opacity or Intensity.

Fire, Smoke Color, and Smoke Opacity, can also be mapped to a texture, or to a Grid Channel multiplied by a texture, to achieve a wide variety of different results.

Textures have infinite resolution, and so they can increase the detail above the resolution of the grid, meaning that even with a low resolution simulation, you can get a detailed result when using a texture.

By default, textures are static in space. However, if you export the Grid Texture UVW Channel and use the TexUVW feature, textures can move together with the fluid to create even more possibilities, such as melting textured icing on a cake.

UI Path: ||Select PhoenixFDSim|| > Attribute Editor > Rendering rollout > Fire rollout

Parameters


When there is both Smoke and Fire (diffuse and emissive) in the same voxel, you can use the Fire Opacity Mode to determine the resulting color and alpha.

The Fire can simply use the opacity that is set for the smoke in the Smoke Opacity sub-rollout, or you can separate their opacities for additional control, using either the Fully Visible or Use Own Opacity modes.

Using the Based on parameter below, you can achieve a wide variety of results when shading Fire & Smoke.

For example, the Fire (emissive content) is by default based on the Temperature Grid Channel. If instead it were based on Smoke Grid Channel data, then voxels containing Smoke values would be shaded as emissive (Fire). In other words, the Smoke would be rendered as Fire.

On the other hand, if the Smoke Color (diffuse) & Smoke Opacity were based on Temperature, then voxels with Temperature values would be shaded as diffuse volumetrics (Smoke Color & Opacity). In other words, the Fire would be rendered as Smoke.



Based on | emSource – Specifies the source channel that will be rendered as fire. By default, the Temperature channel is used.

  • Disabled - the emission component of the shader will be disabled
  • Temperature
  • Smoke
  • Speed
  • Fuel
  • Texture - the emission will be based on the texture map specified in the Texture parameter
  • RGB

Texture | emTexture – If Based on is set to Texture, this slot specifies the texture from which fire is rendered. This slot can also specify a texture to be used with the Modulate option. For more information on texture mapping in Phoenix, please check the Texture mapping, moving textures with fire/smoke/liquid, and TexUVW page.

Modulate | emModulate – Enabling this option multiplies the Based on channel by the map in the Texture slot. This is only effective when Based on is not set to Texture.

Reset to Defaults – Resets the rollout settings to their default values.

Fire Opacity Mode emIgnoreAlpha – While smoke has its own opacity in the Smoke Opacity rollout, the Fire opacity can be determined in either one of the following three ways:

Use Smoke Opacity – Fire will use the same opacity that is set to the smoke in the Smoke Opacity rollout. This means the fire will not be visible in cells where there is no smoke.
Fully Visible – Fire will always render as if it has full opacity, but will not produce alpha. This way fire will be visible even in cells that have no opacity. This mode is intended for use with Phoenix simulations, such as simulations with sources that emit Temperature but do not emit Smoke. During rendering, Phoenix internally composes the fire with the scene using additive blending, and such blending must be used when compositing fire manually. However, this mode is not suitable for compositing fire mixed with smoke.
Use Own Opacity – Custom varying opacity for the fire using the Opacity diagram and/or using a texture.

Physically Based | emBlackBody – Transitions between an artistic look of the fire (when set to 0) and a realistic physically-based Intensity (when set to 1). The realistic mode multiplies the fire intensity by the Black Body Radiation model, which gives strong brightness to the hot parts of the fire. See the Physically Based example.

Opacity Texture Mode | emAlphaSrc –  Available only when the Fire Opacity Mode is set to Use Own Opacity.

Don't Use Opacity Texture – The Fire Opacity will be based entirely on the Color and Opacity Curve below.
Multiply Opacity By Texture – The Color and Opacity Curve will be multiplied by the specified texture to produce the final Fire Opacity.
Fire Opacity From Texture – The Fire Opacity will be based entirely on the specified texture - the Color and Opacity Curve below will be ignored.

Opacity Texture | emAlphaTexture – If Opacity Texture Mode is set to Multiply Opacity By Texture or Fire Opacity From Texture, this slot specifies the texture used to modulate the Fire Opacity. For more information on texture mapping in Phoenix, please check the Texture mapping, moving textures with fire/smoke/liquid, and TexUVW page.

Fire MultiplieremMult – General multiplier for the fire color's intensity.

Opacity Multiplier | emAlphaMult – Multiplier for the fire's own opacity when it is detached from the Smoke Opacity. Used only when the Opacity Mode is set to Use Own Opacity.

Color Gradient and Intensity/Opacity Curve


When the Based on option is set to a Grid Channel, the Color Gradient and Intensity/Opacity curve graph diagram are used to remap the grid sim data to render data.

The Color Gradient remaps the sim data from the Based on channel to Fire Color.

Meanwhile, the graph diagram curve remaps the Based on channel to Fire Intensity, or Fire Opacity when the Fire Opacity Mode is set to Use Own Opacity.

On the graph diagram, Opacity/Intensity is mapped vertically on the Y axis, and goes from 0 to 1.

The X Axis represents the values for the Grid Channel selected in the Based on parameter. The channel's data range is displayed as a light-blue highlight on the graph.

See the Phoenix Grid Channel Ranges for more information.

Color emRampColor_t, emRampColor_s, emRampColor_v, emRampColor_f – Controls the color of the light as a function of the selected channel's value. This color is multiplied by the Fire Multiplier to achieve the final value that will be used. The selected channel's data range will be highlighted in light blue.

Intensity epower_t, epower_s, epower_v, epower_f – Visible when the Fire Opacity Mode is set to Use Smoke Opacity or Fully Visible. The luminance of the emitted light is determined by the function represented in the diagram control. Along the X axis is the value of the selected Based on source channel (Temperature, Fuel, etc.). The color of the light is set by the gradient control above. The selected channel's data range will be highlighted in light-blue.

Opacity epower_t, epower_s, epower_v, epower_f – Visible only when the Fire Opacity Mode is set to Use Own Opacity. The opacity of the emitted light is determined by the function represented in the diagram control. Along the X axis is the value of the selected Based on source channel (Temperature, Fuel, etc.).

You can use the following controls in the color gradients and diagrams:

Double click – Creates a new point or changes an existing one.
Left button drag over a point
– Moves the point. If several points were selected beforehand, they will move the same amount.
Left button drag over several points
– Selects several points.
Middle button drag over the background
– Drags the visible area. If the Shift key is pressed, scales the diagram in the corresponding direction.
Mouse wheel
– Zooms in/out.
Mouse wheel near the borders of the control – Zooms in/out only along X or only along Y.
Right-click
– Displays a drop-down menu where you can add a point, edit or delete a selected point, and fit the entire diagram or gradient into the view. If multiple points are selected, they can be edited simultaneously. Multiple selected points can also be scaled and flipped with the Scale Selection option as seen below.


Example: Physically Based


The Physically Based parameter can alter the apparent brightness of the fire to dial in a specific look for the fire. This example illustrates transitioning from a darker artistic look (0) to a photorealistic look (1).



Physically Based = 0


Physically Based = 0.1


Physically Based = 1