© Square Enix © Goodbye Kansas

Table of Contents

This page provides information on the V-Ray VRayProxy SOP.


VRayProxy imports geometry from an external mesh at render time only. The geometry is not present in the scene, and does not use up any resources. This allows the rendering of scenes with many millions of faces, more than Houdini itself can handle. The node can load alembic (.abc) and V-Ray proxy (.vrmesh) files.

If you wish to import a mesh through a VRayProxy node, the mesh must first be exported to a .vrmesh file. See the V-Ray Proxy Export page 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.

It is important to note that the mesh is in a "ready to render" state. 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. 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 Support

The VRayProxy node can also load and render Alembic files (.abc). The supported geometry types are polygonal meshes (without subdivision surfaces), spline curves and particles. 

V-Ray recognizes velocity information for motion blur if it is stored either as standard Alembic velocity, or as a 3D vector array property called arbGeom.v, arbGeom.velocities or arbGeom.velocity. Additional Alembic color sets are imported as mapping channels with indices greater than 0 (i.e. 12 etc). It's also possible to use such a color set for velocity. The VRayProxy has some additional parameters related to Alembic files. 

It is recommended to use Houdini's native alembic loader.


File Name – The source .vrmesh file. Animated proxies can be stored either in one single file, or as a sequence of files with one file per frame.

Reload Geometry – V-Ray attempts to reload the specified geometry.

Expand Primitives – When enabled, primitives are expanded on a per-object basis.

Missing File – Specifies how V-Ray handles a missing file:

Report Error – V-Ray reports an error.
No Geometry – V-Ray does not load any geometry and does not report an error.

Preview Type – Specifies how the mesh is displayed in the viewport.

Bounding Box – The mesh is loaded as a box scaled to fit the object in viewport. 
Preview Geometry
 – The mesh is loaded as a low poly proxy preview as defined in the .vrmesh file. 
Full Geometry
 – Loads the original mesh.

Preview Faces – Specifies how many faces are going to be used to show a preview of the proxy in the viewport.

Scale – Specifies the size scaling factor.

Flip Axis – When enabled, transforms the proxy from Y-up to Z-up (and vice versa) coordinate system.

Flip Normals – When enabled, reverses the direction of the normals.


Playback Type – Specifies a playback mode. This option is ignored if you use a sequence of separate .vrmesh files.

Loop – Loops the animation by skipping to the first frame once it has finished.
Once – Plays the animation once.
Ping-pong – Loops the animation by playing it backwards once the last frame has been reached and then playing it forward again when the first frame is reached.
Still – Does not play the animation. Instead, just the Start Offset frame is shown.

Get Animation Length From File – Sets the total animation length for the proxy . 

Start Offset – Offsets the beginning of the animation by the given number of frames. You can use positive as well as negative values here.

Playback Speed – A multiplier for the speed of the animation. Putting negative numbers here makes the animation play backwards. This option may not work very well for sequences of .vrmesh files.

Sequence Override – Allows you to manually specify which part of the animation to be played.

Sequence Start – Specifies the first frame of the animation.

Sequence Length – Specifies the length of the animation to be played.

Override Frame – Animated proxy override frame to render.


Compute Bounding Box – When enabled, the bounding box of the mesh is recomputed. When disabled, the bounding box specified in the file is used.

Compute Normals – When enabled, V-Ray generates and saves information about the normal of each vertex. This requires additional memory but speeds up the shading calculations during rendering.

Smooth Angle – When Compute Normals is enabled, specifies the angle amount below which normals are smoothed.

Smooth UV – When enabled, smooths UVs when rendering the mesh as a subdivision surface.

Smooth UV Borders – When enabled, smooths UVs at the mesh borders when rendering the mesh as a subdivision surface.

First Map Channel – Specifies how to remap the mapping channels:

-1 – No remapping.
0 – Remapped to channel 0.
1 – Remapped to channel 1.

Hair Width Multiplier – A multiplier controlling the hair width during rendering.

Particle Render Mode – Controls how the particles in the proxy are rendered in the viewports. The available options are Point and Sphere.

Particle Width Multiplier – Controls the size of the particles when rendering.

Use Point Cloud – Enables the usage of point cloud data if available.

Point Cloud Mult – Determines the way point cloud levels are loaded. A value of 1.0 means that the level to load is determined exactly by the distance from the camera to the object. A value smaller than 1.0 means that the level is of greater detail than required by distance. Values greater than 1.0 mean that the resolution of the level is smaller than the one determined by distance. A value of 0.0 means that no point cloud level is loaded and the original mesh is rendered instead.



Animation Offset – When enabled, uses Alembic animation frame offset.

Instancing – Enables or disables the instancing of alembic duplicated objects.

Velocity Multiplier – Controls the length of the motion blur when rendering.

Subdivide All Meshes – When enabled, subdivides alembic PolyMesh and SubD objects. When disabled, subdivides only SubD objects.

Subdiv Type – Specifies one of the following subdivision types:

0 – Catmull-Clark subdivision.
1 – Loop subdivision.

Subdivision Level – Specifies the subdivision level.

Subdivide UVs – When enabled, subdivides mapping channels.

Preserve Geometry Borders – Specifies whether geometry borders are preserved or not.

Preserve Map Borders – Specifies how to handle subdivisions of UV coordinates at UV seams when Subdivide UVs is enabled. The possible values are:

None – UVs are always subdivided regardless of whether they are on a UV seam or not.
Internal – Only preserve UVs if they are on an internal UV seam.
All – Does not subdivide UVs on UV seams.


File Layers – Specifies a list of Alembic files for layering.

Main tab

Layers tab