This page gives information on the VRayProxy node and how to use it.

 

Page Contents ×

 

Overview


VRayProxy imports geometry from an external file at render time only. The geometry is not present in the scene, and does not use up any resources, except for the viewport preview. This allows the rendering of scenes with many millions of faces, more than Maya itself can handle.

The V-Ray proxy in Maya creates a VRayMesh node which loads the geometry from a file on disk. The node can load alembic (.abc) and V-Ray proxy (.vrmesh) files. See Import V-Ray Proxy.

If you wish to import a Maya mesh through a VRayProxy object, the mesh must first be exported to a .vrmesh file either from the Maya user interface, or through a MEL command. See Export Mesh to a File for details.

 


The .vrmesh File Format


Meshes are exported to a special .vrmesh file format. It contains all geometric information for a mesh – vertices and face topology as well as texture channels, face material IDs, smoothing groups, normals – in short, everything that is needed to render the mesh. In addition, the mesh is preprocessed and subdivided into chunks for easier access. The file also contains a simplified version of the mesh used for preview purposes in the viewports. More information about the .vrmesh file format is available in the V-Ray SDK documentation that comes with the V-Ray for Maya installation.

It is important to realize that the mesh is in a "ready to render" format. No further modifications to the mesh are expected. You can't apply modifiers to the mesh, or animate it in any way other than animating the position/orientation of the proxy object. There is no way to recover the original mesh from a .vrmesh file (this can be done in principle, but is currently not supported). Therefore, if you plan on doing modifications to the mesh, you should keep it in a Maya file (which may be different from the file that gets rendered in the end).


Alembic Supported Features


The VRayMesh node can also load and render Alembic files (.abc). Here is a list of the supported features. 

Geometry types

  • Polygonal meshes (including subdivision surfaces)
  • Spline curves
  • Particles

All geometry types support motion blur. If the mesh/hair topology or particle count are not changing, then precise motion blur is computed. Otherwise, velocity channel must be provided in the file to describe the motion blur.


Mesh Objects

  • Velocity channel - It is always computed for animations with homogeneous topology. Otherwise, it is read from the standard alembic velocity property in units/second. Alternatively, it is in units/frame in a geometry property specified in "velocity_color_set" GeomMeshFile plugin parameter, or in geometry property named “v”, “velocities”, “velocity”, “Velocity”;
  • Material IDs - Provided by per face uin32 property named “.materialids” or by alembic face sets. Each face set name which start with a non-negative integer will assign this integer as material id. Face set names which do not start with an integer receive consecutive material ids;
  • Normals - If “compute_normals” is on, then normals are always computed with the given “smooth_angle” parameter. Otherwise they are read from the alembic default property for normals. If they are not written then geometric normals are used;
  • UV channels - All vector2 float/double properties in ArbGeomParams that start with “uv” are sorted and listed as UV sets. The default UV set comes first with name “uv”;
  • Color channels - All vector3, color3 and color4 properties are represented as three component color channels. All other scalar geometry properties are packed into three component colors.

 

Hair Objects

  • Velocity channel - It is always computed for animations with homogeneous topology. Otherwise, it is read from the standard alembic velocity property in units/second;
  • Hair width - Either written as standard alembic property expressed as diameter or written as radius in “.radius” property;
  • UV channels - All vector2 float/double properties in ArbGeomParams that start with “uv” are sorted and listed as UV sets. The default UV set comes first with name “uv”. UVs can be per vertex of per strand. 


Particle Objects

  • Velocity channel - It is always computed for animations with homogeneous topology. Otherwise, it is read from the standard alembic velocity property in units/second;
  • Particle width - It is either written as standard alembic property expressed as diameter or written as radius in “.radius” property.


The VRayMesh has some additional parameters related to Alembic files. See the Alembic Proxy Parameters section of the Import V-Ray Proxy page for more details. 


Notes


  • The resulting .vrmesh files can be rendered outside of Maya - for example, by the standalone version of V-Ray, or V-Ray for 3ds Max.

  • You can convert .ply.obj.geo and .bin files to .vrmesh files with the help of the ply2vrmesh converter tool.

  • The V-Ray SDK has methods for reading and writing of .vrmesh files.