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:
- 3ds Max
- Maya
- SketchUp
- Rhino
- Cinema4D
- Blender
- Houdini
-
Revit
To override the displacement in Revit, all the materials need to be overridden. The option Keep Relief Pattern in the Global Overrides Tab enables/disables both Bump and Displacement when applying Global Material overrides.
Learn more about the Keep Relief Pattern 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.