Optimizing V-Ray Displacement

In certain scenarios, displacement mapping could use a lot of memory and increase render times significantly. Depending on the displacement settings, image resolution, and object being displaced, V-Ray could generate heavy geometry that's difficult to render. This article aims to identify and resolve such issues.

 

Common signs of displacement issues:

  • 3D host application freezes or crashes, especially when rendering high-resolution images
  • Endless calculation of the Light Cache
  • Render stuck on the Compiling scene geometry or Building Embree static accelerator phase
  • Memory utilization reaches 100%

     

Quick troubleshooting

Some host applications have an option for disabling the displacement globally. This is handy when you are not sure if the displacement is causing the issue.  Try disabling the displacement globally - if the issue is resolved, optimizations are needed.

Where to find the option:

How to optimize?

  • Disable displacement that is not directly visible in the render

    Displacement mapping that is present in the camera view, but is hidden behind other geometry, is still calculated and consumes RAM. Disable the Displacement of such objects.

  • Apply displacement only where needed

    Avoid adding displacement on large scene areas and on objects, where the effect is negligible.

  • Increase Edge length

    Setting a lower value of  Edge Length produces more detailed geometry, but uses more RAM. Increase the Edge Length parameter to save memory. 

  • Enable the "View-Dependent" option

    This option causes the Edge Length to be calculated in Screen pixels, rather than World Units. For higher resolutions, the Edge Length should be lowered accordingly.

    Where to find the Edge Length and View-Dependent options:

  • Replace with Bump or Normal mapping

    In some scenarios, displacement can be replaced with a Bump or Normal Map, which is less memory-consuming. For example, on objects that are far away from the camera.

  • Decrease Max. Subdivs when using type: Subdivison

    The Max subdivs value controls the maximum sub-triangles generated from any triangle of the original mesh. Decrease this value to save memory.

  • Use a machine with more available RAM

  • Use Chaos Cloud

    Chaos Cloud is a brilliant option to render projects that can't fit into a local machine's memory. It's a one-click solution that will help you render the scene without investing in additional hardware or losing time to optimize the scene. 

    Learn more about Submitting Render Jobs to Chaos Cloud in Host Applications.

 

Was this article helpful?
0 out of 0 found this helpful