Jump to content

PBR + a lot of Displacement = Ram completely filled up!

Recommended Posts

Hey Folks!

I am working on a bigger project with lots of displacement going on (a terrain, some rocks, a dragon) and tried to render this with PBR.

If the Camera is further away of my scene and objects (wide-angle shot), everything works fine, it renders nicely, but as soon as I go closer (e.g. close-up of the dragons head) mantra starts preparing the scene, fills up my entire 32GB of RAM, and won't start render.

I am afraid that i can not post any scene files, because it is just too heavy to include everything you guys would need to be able to work with it.

I did some research on my own and found out that it must have something to do with "Dicing" and "Shading Quality". When you use PBR, you practically use raytracing all over the place, and for raytracing mantra needs to have all the geometry stored in ram at once. Displacement means a lot of geometry, i know. I assume it dices the things up too much, causing a RAM overflow -> making the image undrenderable.

Is there anything I can do to prevent or fix this issue?


Win7 pro 64bit, 6core intel i7 + 32GB RAM

I would really appreciate some help here. I am sitting in front of a nice looking scene, not able to render it, that is somehow crule...

Link to comment
Share on other sites

Just a quick thought, without knowing more about your setup:

Check the "Raytracing Bias" setting, under the 'Shading' folder on your Mantra ROP - the default of 0.001 might be overkill for your scene scale.

Try values like 0.01 or 0.1 (or until you start to notice artifacts in the shadows/geo in your renders) and see if that helps.

Also check your Cameras Near and Far Clipping settings - this can sometimes make a difference, especially when going very close up to objects.

Hope that helps,


Link to comment
Share on other sites

Ok, raytracing bias and cam clipping plane did not make any difference, but anyway, thanks for pointing it out! One never knows ;)

Tile-Size is 16 for a fullHD render (1920x1080) and i think that is already pretty small, or is it not? (in Vray, I normaly have tile sizes of about 64 or 128 for such a high resolution, or even above when i render for print and resolutions beyond 4k)

What got the scene to render was to decrease the cache ratio from 0.75 (standard was 0.25) back to 0.25 or even below.

But still, it is eating up all my ram, but at least it is rendering.

I guess I have to disable displacement on some assets, or what else could i do to lower the memory footprint of the scene?

Annother thing is that i still have all my textures as tiffs and objects as .obj. For testing i tend to leave it this way (since eveything is constantly updated and changing), and when it comes to final rendering, i convert everything to rat and bgeo. May that be something which uses a lot or RAM too? Not having things converted?

Thanks for your help folks! I really appreciate!

Link to comment
Share on other sites

1. Converting tiff to rats wouldn't hurt and actually could makes a difference!

2. Objs as input don't hurt render time RAM usage, except for hbatch process (ifd generation), which takes longer, but if you use already 12.5, convert polygons to polysoup for at least 4x memory saving on geometry.

3. Turn on predicing with "Precompute Bounds".

4. Try (new 12.5) vm_bumpraydisplace which mixes displacement with bump mapping.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...