We’re using a setup with Maya (2014) and V-Ray, where we have our render layers come in from a reference. The Deadline submitter purposfully ignores these renderlayers.
Now I think there was something in previous version of Maya where referenced render layers weren’t working 100%. However, we’ve modified the deadline submission script, disabling the ‘is referenced renderlayer’ check, and, at least with Maya 2014 and V-Ray 2.45 we’ve rendered some pretty complicated setups with referenced render layers successfully.
Maybe if you could revisit the Maya submitter and see if that referenceQuery check is still neccessary?
renderrig.ma, which has a spehere and a cone, and two new render layers (redcone and bluesphere), with different V-Ray elements enabled in each. The renderscene.ma references the renderrig.ma file.
With the standard 6.1 deadline Maya submission script, it will ignore the renderlayers fromt he referenced scene. With our patched version*, it picks up the layers and renders them correctly. (You do need to use the ‘Use referenced’ option in the V-Ray Render Elements tab to get them to show up). Lighting/rendering-wise the setup doesn’t make all that much sense, but it demonstrates the situation quite nicely, in that if it gets rendered through Deadline with the patched submission script, the correct elements and Maya objects appear in their respective render layers.
Now I haven’t tested this with any other renderer than V-Ray 2.45 nor with a different Maya than 2014, but with that combination it works just fine.
Cheers,
Sebastian
*) I’ve just, rather crudely, replaced every instance of the ‘referenceQuery -inr $renderLayer’ with 0, pretending to the script that there are no referenced renderlayers. referenced_render_layers.7z (9.04 KB)
Oh this totally not a high priority thing. It just seems that referenced render layers are now working, so in the next deadline version, maybe support for them could be added to deadline.
Well, I took a look at our code for setting the render layers within MayaBatch (see GetRenderLayerCommand()) and it looks like a lot of them just call setMayaSoftwareLayers() with the render layer name.
Do you know if the API is going to support us calling the particular referenced render layer that way (no idea on Maxwell or 3delight at the moment), or does anything need special work (what to do with duplicates for example)? I’ll go talk to the integration team for a bit to see how far they’ve gone down this path to see if they’ve got any ideas.