AWS Thinkbox Discussion Forums

Merging Max Files On Deadline

Is it possible for me to send a list of strings (being max file paths) to deadline, and have it merge all the files into a single max scene and then render them?

The key thing here is the job takes two main args

  1. list of max filepaths
  2. Output path where i want it to render the images

Ideally would you want every frame/tile to perform the same merge operation and then render their specific tile/frame, or would you have a single machine perform the merge and then submit the resulting file as a separate render to get the frames/tiles out?

Effectively there are three tools at your disposal which, between them, should get you where you want to go:

  1. The ability to run a script before (or in lieu of) rendering on Deadline. Take a look at the ‘Script’ tab on the submitter.
  2. The ability to submit arbitrary data with your job (such as the filepaths for Max files) - see here.
  1. The ability for scripts run during a deadline job to get various bits of data about the job. Ctrl+F for “DeadlineUtil” on this page.

Exactly how you wrap all this up will depend on what your current pipeline is, if you have a customised submitter etc. But those are the nuts and bolts required to get it working. One possible way of it working:

  1. Set up your scene how you want it rendered (render settings, render outputs, elements etc)
  2. Add the various paths for Max Files you want to merge (as per step 2 above) to the job.
  3. Submit this job as a ‘script job’ - this means it doesn’t actually render anything.
  4. The script it runs is one you’ve written that collects the data you’ve stuffed into the job, merges the files, and then submits a new job (using the built in SMTD functions for submitting jobs). Remember, this Max file that’s open when the script is run is one that already has your render settings set up - only of course this second submission isn’t a script job but rather a traditional render job.
  5. Happiness, maybe.

If you want each task (frame or tile etc) to do its own merging operation, then step 3) above changes - you don’t want a script job, but rather a job with a pre-render script. This script (which you’ll also have to write) will do a similar function to the one mentioned above, except without the bit at the end where it submits a new job. This one will simply merge, and then when it’s done Deadline gets on with rendering.

Privacy | Site terms | Cookie preferences