No matter what renderer you are going to use, you should take care of geometry’s “Render Stats” before rendering, especially when you are planning to decompose a rendering job into several layers/passes. Here is a quick python scripts based on pymel to do that.
from pymel import * def dgVerifyRenderStats(surfaces=None): ''' dgVerifyRenderStats deps: none verify and adjust all surface's render stats. double sided, opposite, smooth shading, motion blur visible in reflections/refractions, casts/receive shadows primary visibility ''' def _verifier(surface): surface.doubleSided.set(0) surface.opposite.set(0) surface.smoothShading.set(1) surface.motionBlur.set(1) surface.visibleInReflections.set(1) surface.visibleInRefractions.set(1) surface.castsShadows.set(1) surface.receiveShadows.set(1) surface.primaryVisibility.set(1) # save the selection selections = ls(selection=True) if surfaces is None: surfaces = ls(long=True, type='surfaceShape') map(_verifier, surfaces) # restore the selection select(selections, r=True)