AWS Thinkbox Discussion Forums

Render every other frames without task size of 1?

I’m rendering out of Vray for Maya and want to render shots on twos (every other frame) until we get shot approval in order to lighten the load on our render farm.

So far the only way I can see to do this is to set the scene file to “Render By” 2, which renders frames 1, 3, 5 etc.

This works, but Deadline handles this by submitting every single frame as a separate task. Obviously this is highly inefficient as it requires that the scene file is loaded for every frame.

Is there any way to prevent this and/or another way to render on twos that won’t have this effect? I’m not sure why Deadline doesn’t respect the task size set in the job submission simply because the render is skipping every other frame.

The main reason we don’t support tasks with frame stepping is that it isn’t supported by every app. Most only allow us to define a start frame and an end frame and so, tasks were designed to only define a contiguous range.

Now, the good news is that for Maya, Deadline can keep everything loaded between tasks if you run it in batch mode. This means you can use the V-Ray export mode, but it will be much faster. Maya also doesn’t require a license itself while rendering, so maybe give it a try and see if it runs a bit better.

Hi Edward,

Thanks for the reply, the explanation, and the suggestion.

Do you mean setting the submission panel to “Vray Export Job”? I’m not particularly familiar with the vrscene workflow.

Choosing this option seems to require that an output vrscene location and filename is set, and also enables the Vray render job options. I’ve tried enabling the “Submit Dependent Vray Standalone Render Job” checkbox, but I’ve yet to figure out a way to get any of this to output a frame sequence.

Does this perhaps require that Vray standalone is installed? I’m not sure what type of installation/licensing we have on our render farm.

Thanks.

I would suggest not using the export job and instead rely on Maya to load and control V-Ray for you. The reason for this is that the MayaBatch render plugin will keep Maya open (along with the scene and its assets) while the V-Ray Standalone render plugin will require restarting between tasks.

This should be your job type:
Screen Shot 2017-01-10 at 9.54.17 AM.png

Feel free to test the two types of jobs head-to-head though. V-Ray will definitely be lighter to start, but I think it will lose out on longer runs.

Hi Edwin,

The “Maya Render Job” type was how I was submitting jobs prior to my original post, and that’s when I was seeing task sizes of 1 frame.

If I’m understanding you correctly then, even though Deadline shows task size of 1, each render node is in fact not reloading the scene assets between frames?

With a regular job submitted with a task/chunk size of 1, I would expect the scene to reload with every frame. But you seem to be saying that this is not the case with a frame-stepped render, and in fact the scene is held in memory by the render nodes between each single frame render. Is that correct?

If batch mode is enabled, that is exactly right. We open MayaBatch and dynamically write Melscript to control the render process.

Here is the quote from the Maya documentation: (docs.thinkboxsoftware.com/produc … -maya.html)

This feature has been around for some seven years, so the “new” and “experimental” notes should likely be removed :laughing:

OK, thanks for the clarification – sounds like I was doing it right to begin with and was just naturally assuming that the packet/task size of 1 automatically meant that the scene was reloading each time.

That brings me to a followup question. When rendering every other frame, the Deadline UI lists every single frame in the overall frame range separately, separated by a comma. Although this is technically correct (e.g. 1,3,5,7,9 instead of 1-10), in most cases for us it’s more useful to be able to see the overall range that is rendering.

Is there any way to do this? Otherwise I’d suggest this as a feature.

Hello,

In order to do what you want, you could also simply do 1-10x2, which would do every second frame. You can read more about formatting your frame list at docs.thinkboxsoftware.com/produc … ng-options if you want to read up.

Thanks, I’m learning!

Up until now I’ve only been submitting jobs via the integrated submission script (I’m pretty new here so haven’t had time to do a lot of deep exploration), but now see that I can also submit directly from the Montior.

I had noticed already that the job submission panel (which I now know is the integrated submission script), does not have an explicit frame range field in it, taking the frame range from the scene file. But I notice that the Monitor submission panel does have this, as expected.

Is there a particular reason this is missing from the ISS panel? This is obviously a value that it’s useful to have direct access to within a render job.

Is this for the Maya in-app submitter? If so, it’s there, but you might have not noticed that the “Render Options” rollout in the GUI just needs to be expanded so that you can see it, as per this screen-grab from our Maya docs page:
docs.thinkboxsoftware.com/produc … d_maya.png

Here’s a Deadline developer blog post on frame list formatting from Feb 2016, with a YouTube video which might help here as well:
deadline.thinkboxsoftware.com/fe … ng-options

Hmm, I hadn’t noticed and now see it, but it’s grayed out and uneditable?

Also, although it’s grayed out I can see that the frame list reads 1001-1490x2 (populated from the scene file?).

So I’m guessing that even if I enter 1001-1490x2 by hand instead of setting “By Frame” in Vray to 2, then Deadline is still going to display the frame range as individual frames (1001,1003,1005) instead of showing the overall frame range (1001-1490).

Is there really no way around this? We are working at 60fps but want to output first pass renders on twos to cut down on unnecessary rendering during shot development. It’s very inconvenient to not be able to see the correct overall frame range display in Deadline’s UI.

Correct, we respect the scene / render settings in Maya.

So, the “frames” column in the jobs panel currently displays frame ranges expanded, when the frame range is Nth based. I appreciate your point and I’ll raise it internally as a possible improvement in the future.

How about this for the time being…You could use one of the “ExtraInfoX” columns to inject what metadata info you prefer to see for the frame range (as per my example) say, at job submission time. You can also customise the column header name.

Thanks, Mike, good suggestion and that is an easy enough workaround for our purposes.

I’m curious though why the Frame List field is grayed out in the Maya submission script UI? Is this normal, and if so why? I personally do prefer to be able to set my frame range in the render manager.

The frame list in our in-app submitter will be greyed out in Maya if you have under Maya -> “Render Settings” -> “File Output” rollout -> “Frame/Animation ext:” set to something which is saying: “…(Single Frame)”. You need to change this to something like: “name.#.ext” and then re-open our in-app submitter. This is a Maya thing.

That makes sense, but the frame name formatting rollout you refer to doesn’t appear in the Vray render settings (at least on my work installation here – I don’t recall if it does normally by default, but I don’t think so).

I tried switching to the Maya software renderer to check that it was set to name.#.ext, then switched back to Vray, but the Frame List field remains grayed out. I wouldn’t expect this to work anyway as that setting is renderer specific.

Oh. In VRay it is different. You have to change this drop-down to not be disabled and then re-load our in-app submitter for the change to take effect. I find it all a bit weird how that stuff works in Maya and each of the different renderers…but then again…that may just be me! :wink:

Yes, that was already set to Standard.

But now I’m finding that this works on a new scene file (Frame List field will be available), but not on my actual working scene files.

This is in Maya 2016 Ext 2 SP1, FYI.

Hmmm…not sure. It’s working fine for me here on Maya 2016 Ext 2 and Maya 2016.5. This is on the masterLayer which is the current render layer in the working scene file, right?

In a new scene it seems like it’s necessary to toggle off the “Render animation only in batch mode” off to get that field to enable.

But this isn’t working in the file I’m working on right now – can’t the Frame List field to enable no matter what. :neutral_face:

I did some quick digging into it, and it looks like the enabled / disabled mode is driven by this Maya property:

getAttr defaultRenderGlobals.animation

Can you try running that in the MEL Maya script listener and see what number it returns? It should be ‘1’ for animation, ‘0’ for not.

I assume we disable it to prevent people from accidentally rendering a single image a few hundred times. Looking at the logic of the submitter it’s pretty deeply ingrained there, but if we can make it work a bit better, we should. It looks like we have some code in our function IsAnimatedOn() which has been commented out for V-Ray, so I’ll have to dig into why that is. Here’s what’s there:

// Returns if animation is enabled.
global proc int IsAnimatedOn()
{
	string $renderer = GetCurrentRenderer();
	
	int $anim = false;
	/*
	if( $renderer == "vray" )
	{
		if( IsOldVray() )
			$anim = `getAttr vraySettings.animation`;
		else
			$anim = `getAttr defaultRenderGlobals.animation`;
	}
	else
	*/
		$anim = `getAttr defaultRenderGlobals.animation`;
	
	return $anim;
}
Privacy | Site terms | Cookie preferences