This page provides information on the V-Ray PhxShaderSim node.


Overview


V-Ray VolumeGrid Shader node works together with a volume object to produce a V-Ray Volume Grid. This node controls the rendering and shading properties of the volumetric cache. See the Volumetric Grid page for additional information on how to set up a V-Ray Volume Grid.

 When rendering volumetric effects with the Volume Grid Shader, please use the VDB file format for caching the simulation to disk. Houdini's native volumes are supported, however, those are always baked to the VRScene instead of referenced from disk.

The Bindings tab on the VolumeGrid Shader, expects vector fields to be represented as three separate float fields. E.g. vel should be vel.x, vel.y, and vel.z when you middle-click on the node holding the volumes. The same goes for Cd and for rendering the native Houdini volumes. Technically speaking, there is no requirement to convert them to VDBs and cache them to a disk, but it makes things more efficient. Otherwise, the entire volume is baked to the VRScene file instead of being read from a disk.





Parameters




The V-Ray VolumeGrid Shader divides its parameters into several tabs:

  • Rendering tab – Controls how the V-Ray VolumeGrid Shader is rendered.
  • Fire tab – Controls the emissive color (fire) of the volumetric shader.
  • Fire Lights tab – Controls how the fire casts light on the other scene objects as well as on the Volume Grid's own Smoke.
  • Smoke tab – Controls how smoke is rendered.
  • Bindings tabControls the channel mapping for the Fire, Smoke Color and Smoke Opacity of the Volumetric Shader.

The V-Ray VolumeGrid Shader also provides several rendering presets for specific types of simulations. They are accessible through the gear icon:



Notes


  • With V-Ray 5, update 2, single vector velocity volumes are supported.
  • V-Ray calculates volumetric motion blur in one of two ways, both of which differ from Mantra:

1) By tracing the velocity for a specific voxel backwards and stretching the content for the newly found voxel at position (current voxel + velocity*-1). This is the closest to what Mantra seems to be doing, which is directly stretching the content for the currently shaded voxel. If you'd like to set up V-Ray to render volumetric motion blur this way, you need to set an option on the volume grid, like this: " setAttr "VRayVolumeGrid1.mbgrid" 1; ". By default, this is set to 0. It won't look exactly like Mantra but should produce good results. You may also need to tweak the Motion Blur Multiplier option.

2) The default option expects grid velocity information to be present around the content (e.g. density) of the blurred voxel. This works really well for simulations where the entire velocity grid's bounding box contains velocity information but may give you trouble if you've generated a VDB with a random velocity field right around the edges of the density. In such cases, the density is stretched as far as the velocity vectors go, and abruptly ends there.