Render viewport subdivision

Hi,
Is there any reason why checking “Render viewport subdivision” sends the light caching times into oblivion? Literally going from 15 seconds to 5 minutes. What kind of subdiving is it doing? It must be incredibly high res! I put a smooth node on the same objects with a division of 3 and it was still 5 seconds to run the light cache.

I take it it’s advisable to never use the Render Viewport Subdivision option if you’re doing a major scene? Or is this render time difference a performance bug?

odd. We use “render viewport subdivision” quite a bit, and haven’t seen this behavior. Could it be a particular mesh that isn’t converting to a subD properly? Perhaps clean up the troublesome mesh? My understanding is that vray converts to a subD and then uses the global subdivision/displacement settings to determine how fine to break it up. You might double-check those, or you can apply a sub/displacement vray attribute on the mesh and override the globals with those settings. Again, the subdivision level is not determined by the smoothMesh settings (default of 3). They are determined by the vray subd settings in the settings tab, or manually applied attributes.

Mmh, well, baking is always better then subdividing on the fly, cause you got the geo stored i mean..
Kinda makes sense, cause it has to sudivide at rendertime, using a lot more Ram to do so.

O.

You will have to increase the value for the “Dynamic memory limit” parameter in the Settings tab to make the rendering faster. Otherwise V-Ray keeps destroying and re-creating the subdivision surfaces which takes time.

Best regards,
Vlado

Thank you for the answers, that’s great. I will try to up my dynamic memory limit.

On a 32 bit system, will this be a major memory hog? Is it better to just smooth my meshes manually if I’m doing larger scenes?

Using “Render viewport subdivision” will be slower for most of the cases since it is calculated during the rendering.
However if you don’t have enough memory due to your 32 bit OS it might be a better idea to smooth the geometry manually.

Best regards,
Zdravko Keremidchiev

I agree. When things come to using subdivision during rendering, the only really possible way is in renderman where subdivision does not take a huge hit on the rendering due to no raytracing. However in raytracers its going to be much slower. I typically subdivide the meshes predetermined before rendering. This allows you to have all the control you need. But might be heavier on ram.

That is very good to know, thank you to everyone who answered my question. I definitively won’t be using that option anymore!

If you add a Vray subdivision node to any object by default it looks at the global subdivision setting. By default it is set to 256 which is extremely high. You need to go into the globals and set it down to something way lower. Depends on the faces of your mesh. Or you can add an extra Subdivision and Displacement quality setting for the objects and adjust it there instead. Not sure if this is the same issue you have, but nonetheless it is good to know if anyone else out there is new to Vray for Maya.

ok, thats good to know. So what is the difference between vray’s sub D & something like renderman for maya’s subD. rendermans seems lightning fast & you dont seem to need to go in & set a global subdivision setting.

& is view dependant relevant to subdivisions?

The difference is that PRMan uses the REYES algorithm for rendering whereas V-Ray uses raytracing. This makes PRMan fast for some things (e.g. subdivision surfaces, as well as DOF and moblur although these are not entirely correct in terms of shading), and slow for others (e.g. raytracing). Reversely, V-Ray is fast for raytracing and does proper shading for DOF and motion blur, but does not (yet) handle subdivision surfaces very well.

& is view dependant relevant to subdivisions?Yes.

Best regards,
Vlado