Deadline Maya API
Request
User story
As a BIP Developer, I need a Deadline Maya submitter that is written in python, that can be used to submit, render/cache/scripts jobs from within Maya
Detailed problematic
- I need an API that allows me to submit jobs to Deadline using python.
- I need to be able to submit 3 types of jobs and customise various job attributes.
- I need to be able to do this without touching any melscript.
Current workflow
- Hack the 'SubmitMayaToDeadline.mel' script that is part of the Deadline Integration
- Feed user inputs into the Maya scene and allow the integration to extract this data
Suggested workflow
-
Create a new Job submitter written in Python
-
As a BIP Developer, I think it would be great if bip could just hit PUBLISH.
- Some of these assets would be published as a cache job (e.g shiro)
- Some would be published as a script job (e.g camera)
This workflow will be external to this API, but this API should ideally allow for that functionality
Needed features
Optional. A list of the features requested. Split between short-term and long-term.
Design
To be filled by the developer
This section's structure really depends on the request. But essentially, any developer reading the design should be able to start implementing it without thinking.
Scenario
How will the request be implemented. Which design pattern will be used...
Structure
How will the implementation be organized. Logical diagrams, UML charts, scripts file structure...
Research and development
The research sprint associated with this ticket is linked at the bottom of the page
Pseudo-code
Optional. Fake-code can be very useful for finding the best structure, especially if building API features.
Material
Sandbox material, used for tests, demos and research. Depending on the domain, it can be a scene, some files, a dataset...
Repository
Current WIP Deadline Maya API can be found here: https://git.blinkink.co.uk/bip/development/-/tree/main/duedate
Tasks
-
Investigate how to access the deadline.scripting module @corentin
Base
-
Write Job and Batch Files -
Basic Validate Input -
Get pools/Workers/Jobs (on hold) -
Dataclass per job file type
Render Job
-
Add Validation for render specific input -
Add Tile Rendering (Requested by Sergei) -
Add Camera Options -
Do we need multiple cameras? (Did not have it on Enkai) -
Add Resolution Options -
Add Overscan (Where should this live?) -
Add Output options (To access file from within deadline monitor) -
Add AOVs
Cache job
-
Add validation for input -
Add export options
Script Job
-
Add validation for input