We are rendering with Deadline where I work.
Recently I started using a workflow that involves referencing lit and shaded assets with legacy render layers into an animation file, and rendering straight out of that file with referencing intact. Importing before rendering seems to break render layers and shading assignment, and often we are starting to render while still developing assets anyway.
With render layers natively in a file, the Deadline submission script will create a separate render job for each render layer. This is good.
However, when referenced render layers are present, this doesn't happen and instead Deadline will launch one monolithic job that outputs all render layers in a single pass, in the same way that batch rendering straight out of Maya would do. Renders come out fine, but this removes a lot of the control and transparency of having separate jobs for each layer, especially as a shot progresses and you want to only render certain passes.
For reasons that are unfathomable to me, Deadline does not have any feature to submit a particular render layer with a job, or even any field in which to use the -rl render flag like every other render manager I've used.
So, my question is does anyone have any clever suggestions about how to get around this problem. We like using our referencing system, but we'd like to find a way to output only specified render layers from our files. Obviously we could hack it by saving out multiple files, or rendering layers in sequence etc. etc. but it would be great to find a way to do this elegantly.
If rendering a normal Maya job, select the Maya Render Job type.

General Options
The following options are available:
Threads: The maximum number of CPUs per machine to render with.
Frame Number Offset: Uses Maya’s frame renumbering option to offset the frames that are rendered.
Submit Render Layers As Separate Jobs: Enable to submit each layer in your scene as a seperate job.
Override Layer Job Settings: If submitting each layer as a separate job, enable this option override the job name, frame list, and task size for each layer. When enabled, the override dialog will appear after you press Submit.
Submit Cameras As Separate Jobs: Enable to submit each camera as a separate job.
Ignore Default Cameras: Enable to have Deadline skip over cameras like persp, top, etc, when submitting each camera as a separate job (even if those cameras are set to renderable).
Enable Local Rendering: If enabled, Deadline will render the frames locally before copying them over to the final network location. This has been known to improve the speed of Maya rendering in some cases.
Render Half Frames: If checked, frames will be split into two using a step of 0.5. Note that frame 0 will save out images 0 and 1, frame 1 will save out images 2 and 3, frame 2 will save out images 4 and 5, etc.
--
You received this message because you are subscribed to the Google Groups "maya_he3d" group.
To unsubscribe from this group and stop receiving emails from it, send an email to maya_he3d+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
The "Submit Render Layers as Separate Jobs" checkbox is grayed out with referenced render layers. This is the only mention of render layers anywhere in Deadline, with no feature to submit a user-specified render layer.
One of their support guys even confirmed to me that Deadline has never really supported render layers.
So, I'm looking for some sort of workaround to this.
Sorry, AND Override Layer Job Settings is grayed out, although I wasn't aware of that drop down before so thanks.
Digging a bit deeper there are a couple of places buried where a pre-task script can be run, but they don't support MEL (which I understand) only Python (which I don't). I'm not sure if these could be used to turn specific render layers on pre-render, which would probably suffice (but is hardly convenient).
I would have said it sounded dangerous as well (!) But it's actually working very well, with a few caveats, and in fact having worked both ways I'm now of the opinion that referencing in render layers is more stable than referencing geo/animation into a lighting/shading scene and creating render layers there, which invariably seems to end up with things breaking. I've only needed to use the fix render layers script once, and it worked completely. I would wager that making changes to render layers once they are referenced in would cause problems, but we don't work that way.
One of the caveats is that importing references does seem to break render layers, so you would want to factor the need to do that into whether it's an appropriate pipeline. But for what we do here, if we were to need to do it it would be relatively easy to simply export animation and create a non-referenced version of the scene.
So far as your scripting suggestion, setting the render layer with a pre-render script is what I want to be able to do within Deadline so I can launch a job for every render layer, specifying which layer to render. But as mentioned, there is no obvious way to do this. Smedge and other render managers make this easy.
Would you like to explain why?
I'm not sure what you mean. For render output? We get a folder per render layer simply using the built-in flags in the naming field with Maya, like <Scene>/<Layer>/<Scene>_<Layer>.
We don't get any colons in the names, although the namespaces from referencing do cause some pretty long and arcane frame names. Working on that...
The connections issues that you mention are precisely why render layers and referencing have never worked very well together, but usually that means referenced geo is applied to render layers. The "risky" workflow I'm using circumvents that problem by not having any reference-dependent connections in render layers because they are all native. Since Vray came along I have generally found render layers to be far less necessary, however where I'm working now I inherited an established pipeline that leans on them pretty heavily. We are sometimes outputting 25-30 render layers with 90-100 Vray passes between them. Introducing the referencing system allows us to maintain lighting and shading consistency across a number of shots without having to make changes to multiple scenes (and yes, these are relatively simple scenes -- I'm not working on crowd scenes or large scale movie shots). So far, so good. Unorthodox, but I learned long ago that there often isn't a "correct" way to approach a problem in CG. I've certainly never worked this way before, but for our particular needs here it seems to be working fine.
So far as Maya's future, I'm waiting for them to fix all the problems with 2017 before we're going to upgrade here. I also don't hear great things about the new render setup system...
I liked render layers. I’m not a hater of MR either but know it comes up short in areas. Never had much trouble with render layers. If they get corrupted, Just delete them and setup again or import fresh into scene and everything seemed to work. Saving a master scene file and then incrementing render layer setup seems to be a good practice to not having everything go south and starting over. Render Setup seems good at first glance but doesn’t give you the control sometimes need by switching renders and flagging certain properties. Render Setup and Render Layers in 2016.5 is a bit of a nightmare. However I’m not going to switch to Arnold and loose my render farm.