Cycles new microdisplacement testing, discussion and blend sharing



yes i know about that different dicing. They are the same. I`ll check again.






4_Same with CPU


when i try to render with cpu it takes for ever… realy grazy…or maybe i missed something i don`t know… maybe the experimental state.

(Ace Dragon) #464

The memory usage for microdisplacement is heavily dependent on the camera position and the resolution of the image.

The reason for that is that it subdivides based on the desired number of faces per-pixel (that is what puts the adaptive in the adaptive subdivision). This more or less has to be solved by way of either having an auto-adjust based on resolution or the introduction of the cache system (the latter which would allow for a near-unlimited amount of subdivision at the cost of some performance).


o.k… what i dont understand is the viewport rendering with same settings and nearly same resolution.I would be realy happy with that kind of quality and render times when it comes to a real F12 render.

by the way… once, when this displacement will work, it will open new horizons to all of us ;).

thanks! cheers and good night!

(BigBlend) #466

There are many good tutorials on youtube that explains how to fix the out of memory but like everyone said, it’s taxing on the memory.

One solution is to use Both bump and true, then lower the max subdivision from 12x to 6x in render tab -> geometry. There will virtually no difference in your scene and you’ll be able to render.


back from sleep. :slight_smile: nobody understands me.
@ bigbad I know that tutorials. They don`t answer or solve my question. But realy thanks for response!
No idea how to make it more clear than the pictures i posted…I need some sleep. Maybe tomorrow everything works fine.
Thanks everybody…

(BeerBaron) #468


Have you used the “Scene->Simplify” option? Consider posting the .blend file. If all else fails, file a bug report.

(BigBlend) #469

But you keep ignoring everyone. You want some kind of magic or prayers that it will work instead of being a real artist and try to solve it.

(Lsscpp) #470

Piet is right, in the screenshots it looks like the settings are the same for preview and render, but the memory used by cycles is almost x10 when F12.
Assuming there’s no use of simplify tab, what other parameters are to be checked that are different between preview/F12?
In performance tab what are the settings? Are you using spatial splits? Any eye/camera modifier possibly forgot?
If no other cause seems to come up, I’d ask to devs, or file a bug report…


Hi BeerBaron,Bigbad and Isscpp again and thanks,

I dont use simplify. I dont know any other parameters that need to be checked.
here are my render settings and settigns for material. If i ignored someone or something Im sorry! Was realy tired. I dont want any magic. I`m just curious about that.

Thank you!

(Lsscpp) #472

A couple more things:
any modifier active? (I’m thinking of a subdivision with eye=off camera=on)
can you share the blend?
If not, you may send objects on a unused layer one at the time, until the problem (memory usage going crazy) is gone, so you should spot the problem.


Hi Isscpp,

Thank you for help. Here is the link.

(BigBlend) #474

Piet. There i no bug in the scene. Preview works only because it has only half the pixels for adaptive subdiv to calculate and add to gpu memory. I takes just as much if you preview the scene in fullscreen or render it.

But you need to watch Gleb Alexandrovs tutorial to understand the limitation of adaptive subdivisions:


Hi bigbad,

I realy dont know. I did the preview rendering and final rendering settings set to 1. What Gleb does is setting everything to 5. To get a preview. And afterwards he setting everything to 1. I understand that this will cause memory problems. Because of that he uses the culling trick. But my scene is done with 1 for both. Preview and final rendering is set to 1. So I think when the preview works realy fast and in nearly fullscreen it should render in final rendering nearly the same time with same mamory usage. But thats not the case. I dont know. Maybe there is something strange with my system setup. Have an GTX 660 TI. I realy dont want to create a endless storry because of maybe my stupidness.
But again. When I set everything… preview and final rendering to the same values everywere it renders fine and fast in nearly fullscreen preview but not in final rendering. Im realy sorry but I dont understand that. Makes no sense to me. That case with same settings of 1 does not apear in the video. I realy dont get it. But it is maybe a little thing i didnt notice… feeling stupid. cant figure it out. But if you say that preview will allways have half the pixels for adaptive subdiv. no mater what my settings are for preview and final rendering than Im happy because it is solved. But in this case I don`t understand the option to set everything to the same values.

many thanks bigbad!

(Lsscpp) #476

After playing a bit with you file it comes you’re wrong Piet:
I maximized a 3dviewport up to 1920x1080, entered camera view, maximized the camera (homekey) and set Rendered mode. Cycles uses just about the same ram it uses when hitting F12. (and won’t render on my GPU).
As told, size matters, since the dicing rate is relative to pixels, therefore when asking 1 poligon for 1 pixel you’re potentially asking for 2.073.600 poligons on the fly, in fullHD (little guessing here). Setting dicing to 2px already works, requiring 1/4 of the poligon count.

I was tricked at the beginning, because just rendering the viewport worked! But when I entered camera view things changed. I think the issue comes because there’s more geometry occupying more portion of the screen, but mostly because of being a view closer to the plane, so that the original geometry needs to be subdivided a lot more to reach 1px size.
You can evaluate this easily looking the wireframe in and out camera view :wink:

(ChameleonScales) #477

I made some tests and it turns out having the original object get duplicated on instances is beneficial in most cases (provided you do it right). If you place the original object where the closest instance is from the camera, this instance will have proper subdivisions and the others will be instanced so it doesn’t matter if they have more polygons than needed, the memory usage will not increase (maybe the path tracing will take longer though, I should test that).
I submitted an update to the blender manual and it got accepted, see here in known limitations :


Hi Isscpp,

O.k. :slight_smile: That answeres my question! I obviously forgot to scale everything in camera preview to fit the fullscren. That´s stupid and a bit awkward… I realy did not notice that the whole time. But thank you realy much everybody who helped me!
hmmmppff :wink: stupid thing.

(soulfire) #479

Is it possible to microdisplace already set microdisplacement map ?

(Bernardo) #480

another limitation is that adaptive subdivision won’t work with panoramic cameras at the moment.