Versions Compared

Key

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

...

UI Expand
titleUI Path: ||Select V-Ray Volume Grid|| > Command panel > Modify tab > Input rollout


 


Input

...

Section
Column
width60%

Expand – Opens a floating dialog that contains the selected rollout and automatically folds the command panel rollout.

? – Opens up the help documents for the Input Rollout.

Preview & Render Cache Path – Specifies the cache file name in one of the three volumetric formats that VRayVolumeGrid supports (OpenVDB, Field3D, PhoenixFD). If the file was specified when the VRayVolumeGrid object was created, the filename appears here. For a sequence of frames, the file name can contain format specifiers to describe a sequence of files. Environment variables can be used as well, which is explained in the Using Environment Variables with Cache Paths section below. VRayVolumeGrid supports multiple format specifiers:

<frame0n>, where n is an integer specifying the number of digits, and the optional 0 specifies padding with zeros. For example, if you enter cache_<frame04>.vdb as the file name, this is expanded to cache_0000.vdb for frame 0, cache_0001.vdb for frame 1, and so on. The same logic is used for VRayMesh.

# symbols are replaced with the current frame number. Multiple symbols can be used to specify the number of digits in the file name. For example cache_###.vdb is expanded to cache_001.vdb for frame 1.

The form %xd is a deprecated form that can no longer be entered, but works with older .vrscenes that already use this format. The form is resolved to the current Maya frame. The  x,  when present, specifies the minimum number of symbols for the frame number. For example, if the current frame is 9:

%d resolves to "9"
%3d resolves to "··9"
%03d resolves to "009"

 
Column
width5%


Column
width35%

UI Text Box
typeinfo

Clicking the "..." button opens a menu with the following options: 


Section
 
Column
width10%


Column
width40%


Default

Column
width40%


With .f3d or .vdb cache loaded

 
Column
width10%


Browse – Opens a dialog for choosing one of several cache file types. Phoenix FD can import *.f3d and *.vdb files from other fluid simulator software products. Supported file formats are:

  • Phoenix FD *.aur 
  • Field3D *.f3d 
  • OpenVDB *.vdb

Reset to Default – Resets the cache path to the default value of $(same_as_output).

Show File Name... – Displays the full cache file path for the current frame.

3rd Party Channel Mappings... – This option is available when a .f3d or .vdb cache is loaded. It launches the Channel Mappings dialog for mapping 3rd party cache channels. See the Channel Mapping section below for more information.

Help – Launches the Volumetric Grid Input help documentation in the web browser.  

UI Text Box
typetip

V-Ray is tightly integrated with Phoenix FD and its native .aur format thus the default rendering settings may be less than ideal for 3rd party cache files.
When loading VDB files generated by other software packages, you are given the option to choose a preset. The presets modify the orientation of the cache files depending on the coordinate system of the source application (Y-up versus Z-up) by Enabling / Disabling the Flip Up Axis option.
Reasonable default values for the shading and rendering parameters are also provided. You can further edit the parameters in the Rendering rollout to achieve the desired appearance of your simulation. 


 


You can suppress showing of the dialogues offering presets using the inDontOfferPresets attribute of the Simulator. Setting inDontOfferPresets to 1, as shown in the image below, disables the presets pop-up window displayed when a VDB or Field3D cache files are loaded.


...


Time Bend Controls

...

This section contains playback options you can use for retiming a cached sequence. Using these, you can speed up, slow down or animate the motion of the sequence. When retiming, additional RAM may be used, and loading a new timeline frame may take longer when the frame must be obtained by creating a new one between two adjacent cache files. We refer to the process of creating an intermediate frame from two caches as Blending.

section
Section
Column
width60%

Mode | animmode – Chooses between different options for animation control:

Linear – This is the default mode. The cache sequence is played with a constant speed and can be offset forward or backward on the timeline, as well as sped up or slowed down.
Cache Index – The Direct Cache Index specifies which cache file is loaded for the current timeline frame. Can be used to either show a static simulation, or the Direct Cache Index can be animated in case you want varying play speed, including playing the simulation in reverse.
Loop – A specified piece of the simulated sequence is looped. Can be used for flowing and repeated effects such as fireplaces, campfires or torch fires, water in fountains, waterfalls or boiling liquid. In this mode, the Cache Origin parameter specifies the beginning of the looped sequence, the Length parameter specifies the length of the loop, and Loop Overlap specifies the number of overlapped frames that ensure smooth transition between the end and the start of the loop. Note that you need to have simulated at least Cache Origin + Length + Loop Overlap cached frames for this mode to work correctly. 

Direct Cache Index | t2f – Used in Cache Index mode and specifies the cache file index for the current timeline frame. This can be animated in order to achieve more interesting time-bend effects.

Timeline Origin | playat – An offset specifying which timeline frame the starting cache is placed on.

Cache Origin | inpoffset – An offset specifying which cache file from the sequence is placed on the timeline at frame Timeline Origin.

Anchor
PlaySpeedPlaySpeed
Div
stylemargin-top: 10px
idFireSmoke_Input_PlaySpeed

Play Speed | play_speed  – A multiplier for the playback speed. Value of 1 means that each timeline frame corresponds exactly to one cache file index. If the play speed is not exactly 1.0, frames are blended between by using the method specified by the Frm. Blend parameter. Note that Play Speed is not keyable - you should switch to Cache Index mode and animate the Direct Cache Index.

Play Length | inplength – The duration in timeline frames. In Linear mode, when this parameter is larger than 0, the sequence length is limited to its value. In Loop mode this parameter shows the loop length. 

Anchor
PlaySpeed
PlaySpeed

Div
stylemargin-top: 10px
idFireSmoke_Input_PlaySpeed

Play Speed | play_speed  – A multiplier for the playback speed. Value of 1 means that each timeline frame corresponds exactly to one cache file index. If the play speed is not exactly 1.0, frames are blended between by using the method specified by the Frm. Blend parameter. Note that Play Speed is not keyable - you should switch to Cache Index mode and animate the Direct Cache Index.

Play Length | inplength – The duration in timeline frames. In Linear mode, when this parameter is larger than 0, the sequence length is limited to its value. In Loop mode this parameter shows the loop length. 

Auto Origin | autoOrigin – When enabled, if there are any loaded cache files, automatically set the Timeline Origin and the Cache Origin to the first frame of the cache sequence, so changing the Play Speed will stretch the sequence relative to this frame.

Timeline Origin | playat – An offset specifying which timeline frame the starting cache is placed on.

Cache Origin | inpoffset – An offset specifying which cache file from the sequence is placed on the timeline at frame Timeline Origin.

Loop Overlap | loopjnt – In Loop mode, specifies the number of timeline frames after the loop's end that are blended with the loop's beginning to make for a smooth transition. Keep in mind that the end transition frames are not in front of the sequence end, but after it. For example if the loop starts at frame 35 and has a Length of 20 and a Loop Overlap of 5, the transition frames start at frame 55 and end at frame 59, which means the simulation must be at least 59 frames long. It is recommended that the Loop Overlap value be longer than the average "lifetime" of the simulation elements while involved in highly visible motion. For example, for a waterfall, the Loop Overlap value should be at least the average time it takes for a water droplet to fall the full distance before being absorbed into the water at the bottom. For a campfire, it should be at least the average time for a particle to rise up and disappear/die. Correct setting of this value is especially important for simulations that contain particles.

Anchor
FrmBlend
FrmBlend

Div
stylemargin-top: 10px
idFireSmoke_Input_FrameBlend

Grid Blend | frmblend  – Used when the Play Speed parameter is not exactly 1.0, or the Direct Cache Index for the current timeline frame is fractional, or you have specified a Loop Overlap in Loop mode. In these cases, a single timeline frame must be constructed from two cache files by blending between them. Each time the timeline is scrolled to a new frame, the caches for this frame are blended again. You can choose between three different methods for blending between cache files:

Div
stylemargin-top: 5px
idFireSmoke_Input_FrameBlend_Interpolation

Interpolation – Simple linear interpolation suitable for slow simulations. This is the fastest method but it does not capture movement well and may produce flickering.

Div
stylemargin-top: 0px
idFireSmoke_Input_FrameBlend_Velocity

Velocity – Velocity-based interpolation. Produces better results, but is also slower. Captures well the movement of the fronts of the plumes, but does not work well for smoke moving backwards, and also may produce flickering. Requires a Velocity channel.

Div
stylemargin-top: 0px
idFireSmoke_Input_FrameBlend_PreciseTracing

Precise Tracing - Improved Velocity based interpolation for Fire and Smoke simulations. Captures plume movement very well and can handle very low Play Speeds. Requires a Velocity channel, as well as an Advection Origin channel.

UI Text Box
typetip

Frame Blending is better suited for simulations without much variety in velocity.


Load Nearest If Missing
 | loadnearest  – If there is no cache file at the required frame, the nearest cache is found and loaded. This is useful for a simulation that ends with a sequence of static frames (for example, still liquid or freezing fire) as it prevents the need to render multiple identical frames after movement has stopped.

Flip Up Axis | ifyz – When enabled, flips the Y and Z axis of the cached transformation. This is useful when the cache was created with a different up axis (for example in Maya).

 
Column
width5%


Column
width35%

Image Removed

 

 

Image Added


Example: Timeline Origin

...

section
Section
info
Column
width
60%
UI Text Box
type
40%

The following example demonstrates how the Timeline Origin parameter can be used to specify which frame on the timeline is treated as the first frame when reading the Input Path cache files.

UI Text Box
typeinfo

The files go from simulationFrame_000 to simulationFrame_030. When the Timeline Origin is set to 10, they are read as if they were saved as simulationFrame_010 to simulationFrame_040.

40%
Column
width
60%

Image Modified

 

 


Example: Cache Origin and Play Speed

...

section
Section
info
Column
width
60%
UI Text Box
type
40%

The following example demonstrates how the Cache Origin and Play Speed can be used to offset and speed up the input cache files.

files.
UI Text Box
typeinfo

The files go from simulationFrame_000 to simulationFrame_030. When the Timeline Origin is set to 100, they are read as if they were saved as simulationFrame_100 to simulationFrame_130.

The Cache Origin is then used to specify which simulationFrame is placed on Timeline Origin = 100. Because Cache Origin is set to 10, the whole sequence is shifted 10 frames back such that simulationFrame_000 is placed at frame 90. Thus, the sequence now goes from frame 90 to frame 120.

The Play Speed is then set to 2.0. Those thirty frames are now reduced to fifteen. The Cache Origin frame is treated as the middle point when shrinking the sequence.

40%
Column
width
60%

Image Modified

 

 


Example: Looping a Simulation

...

Section
info
Column
width
60%
UI Text Box
type
40%

The following example demonstrates how the Input rollout parameters can be used to loop a simulation.

UI Text Box
typeinfo

The Timeline Origin parameter is set to 0 - this will be the first frame of the timeline where the selected simulated cache files will be placed on.

The Cache Origin is set to 10 so simulationFrame_010 is read and placed at Timeline Origin = 0.

The Play Length is set to 15 so the sequence now repeats itself every 15 frames when played back (those are actually simulationFrame_010 to simulationFrame_025).

Finally, the Loop Overlap parameter is set to 5 to provide a few extra frames for blending the start and end of the loop together in a smooth transition.

40%
Column
width
60%

Image Modified

 

...


Example: Play Speed

...

UI Expand
titleExample: Large Smoke (Play Speed: 0.1)
Section
 
Column
width1%


Column
width98%
Align
aligncenter
HTML
<iframe width="720" height="405" src="https://www.youtube.com/embed/CJYmkNn21Fo" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
 
Column
width1%


UI Expand
titleExample: Gasoline Explosion (Play Speed: 0.1)
Section
 
Column
width1%


Column
width98%
Align
aligncenter
HTML
<iframe width="720" height="405" src="https://www.youtube.com/embed/KU60XwSafUY" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
 
Column
width1%


UI Expand
titleExample: Burning Fuel (Play Speed: 0.1)
Section
 
Column
width1%


Column
width98%
Align
aligncenter
HTML
<iframe width="720" height="405" src="https://www.youtube.com/embed/yI5I2rDxlNs" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
 
Column
width1%



Grid Channel Smoothing

...

UI Text Box
typewarning

Smoothing is performed after the cache file is loaded for the current frame, so for large grids it could cause significant lag when changing frames. To prevent this from occurring, switch it off during the design process and re-enable it again before rendering.

...

Section
Column
width60%

Channel | sm_ch – Controls which channel is affected by changes made to the settings below. The following channels can be smoothed:

Temperature
Smoke
RGB
Fuel
Velocity

Smooth this channel | enablesmoothsmoke, enablesmoothtemp, enablesmoothuvw, enablesmoothfuel, enablesmoothvel – If enabled, the channel is smoothed.

Threshold | smoothtemp.x, smoothsmoke.x, smoothuvw.x, smoothfuel.x, smoothvel.x  – If this value is 0, the entire grid is smoothed evenly. The higher the threshold is raised, the less voxels are affected and only the sharpest gradients are smoothed. The highest value you could use here depends on the range of the values of the smoothed channel - for Smoke it's usually in the [0,1] range, while for Velocity it could go as high as several hundred and for Temperature it could be over a thousand. If you set this value too high, no voxels are smoothed at all.

Similarity | smoothtemp.y, smoothsmoke.y, smoothuvw.y, smoothfuel.y, smoothvel.y  – Increasing this value allows you to smooth only the finer small-scale noise without changing the areas of the fluid which are already smooth. Note that just like the Threshold option, this value also depends on the range of the selected channel. If you want to remove only some sharp fine disturbances from the simulation without blurring other areas, set the Threshold to 0, increase the Similarity to the highest values the selected channel can take and then start reducing it until the small-scale noise is removed, while the larger fluid shapes are retained. This option won't take effect if the Threshold parameter is raised to the maximum. 

Random Variation | smoothtemp.z, smoothsmoke.z, smoothuvw.z, smoothfuel.z, smoothvel.z  – This parameter introduces noise of uniform scale in the channel before smoothing is applied. This can be useful if you want to give the fluid a more homogeneous pattern and this way it can also help hide grid artifacts. Note that just like the Threshold option, this value also depends on the range of the selected channel. You can use this option to only add noise to the channel without smoothing it - in order to do this, set both Threshold and Similarity to the highest values of the selected channel and this way they do not take effect.

 
Column
width5%


Column
width35%

Anchor
Channel Mapping
Channel Mapping
 


Channels Mapping

...

Section
Column
width60%40%

Different applications use different channels and might have different names for them. When loading f3d/vdb files, Phoenix tries to automatically make the conversion to the supported channels. If a channel is not mapped by default, a channel can be manually set from the dropdown menu. It can be accessed from the Cache Path menu when a 3rd party cache is loaded (e.g. .f3d or .vdb files).

All mappings are kept in a single string parameter, accessible by the name "usrchmap". An example mapping string is:

2,density;10,fuel;1,temperature;4,vel.x;5,vel.y;6 ,vel.z;

The string is composed of pairs of a Phoenix channel index and a string channel name. The following channels with their respective indices are supported:

Smoke - 2
Temperature - 1
Fuel - 10
Velocity.x - 4
Velocity.y - 5
Velocity.z - 6
Red - 7
Green - 8
Blue - 9
Wavelet Energy - 14
Wavelet.u - 19
Wavelet.v - 20
Wavelet.w - 21

 
Column
width5%


Column
width35%60%

...


Anchor
environmentVariables
environmentVariables

...