3DS Max and Deadline: An Introduction
Version: Deadline 6.0 onwards
INTRODUCTION - DEEP ROOTS
The 3ds Max plugin in Deadline is one of the most sophisticated and powerful features in Deadline’s toolbox. It is arguably the class and industry leading plugin of choice for many of the world’s visualization based studios whether that be product, architectural, automotive, engineering, manufacturing or the many VFX/Film pipelines based around 3ds Max.
I’d like to highlight some of the power features we have with our 3ds Max integration in Deadline. First up. Lightning. The ‘secret’ sauce.
WHAT IS LIGHTNING?
In Deadline, we are referring to our exclusive c++ plugin which allows us importantly to control 3ds Max in a stable and reliable way. The image below illustrates where the 3ds Max specific plugin sits in the stack. Lightning allows us to run 3ds Max with bi-directional communication via our Python plugin layer within Deadline’s architecture. The end result, is simply, a very stable environment where we have 100% control over 3ds Max, can execute other commands and not just “render” base commands and have full access to the 3ds Max at the SDK level.
What does this mean in real-terms? Well...black buckets or worse still, hung buckets and hung rendering frames, which you will get sometimes by rendering using the CLI version of 3ds Max via 3dsmaxcmd.exe simply won’t happen. We are able to unload and reload all the dll’s of your renderer of choice in under 1 second, between frames. We can do this nearly 10 times, in the same time it takes the fastest runner in the world to run 100 metres! Why unload your renderer plugin between rendering frames? Well, it forces the purging of any ‘stuck’ memory, which can result in hung or black buckets.
The 2-way communication also means we have much deeper task render status reporting. So, per Deadline Worker rendering a frame of a 3ds Max render job, we can report sub-task progress such as “Translating Scene...”, “Loading Textures...” and “Calculating GI...%”. All this leads to a subtle but comprehensive suite of tools for controlling 3ds Max. Finally, the Lightning plugin even has its own MAXScript Interface inside of 3ds Max, so you can take advantage of it further in your studio pipeline.
SMTD - SUBMIT MAX TO DEADLINE
Deadline also has a comprehensive in-application submitter known as “Submit Max To Deadline”.
Deadline supports the ability to reserve additional machines for “interactive” rendering for V-Ray and Corona. An exclusive new feature in Deadline 7 is we are able to keep our UI active even during rendering, which means you can add/remove Deadline Workers to increase/decrease the number of machines contributing to the DBR render in progress. Additionally, the submitter UI doesn’t lock up (MAXScript is single threaded and locks during rendering) and this happens as a background thread, so you never feel like your being slowed down as you interact with 3ds Max.
This type of ‘Reserve Workers’ workflow is also supported in Deadline for many other applications which we have previously blogged on this topic about.
The V-Ray DBR “off-load” system in 3ds Max allows users to submit an entire V-Ray DBR job off their workstation to a number of compute nodes. The first task (frame:0) becomes the replacement workstation/master machine. Due to the way V-Ray’s DBR process works, you can save on submitting 2 jobs to farm to (i) Calculate IR/GI secondary illumination and (ii) final render pass job. Let “off-load” DBR do both, distributed across many machines. This system also works via Mental Ray’s Satellite service. Additionally, new in Deadline 8 is the ability to dynamically add/remove Workers during the render process via the right-click job script -> “DynamicDBR”.
We have previously covered the Jigsaw system in another blog post. It’s awesome. Think of it as Tile/Region rendering but on steroids. It can easily get you out of a sticky situation with the client ‘deadline’ the next day! (Pun intended)
We fully support all Backburner style 3ds Max job submission features via our 3dsCmd plugin, including quite a few extra features such as Pipeline Tools - Draft, Shotgun, FTrack, NIM as well as support for V-Ray Off-load jobs, with the added advantage that the first task does not require a 3ds Max license to run. Although our 3dsCmd plugin and submitter (in-app and monitor) are useful, they are not as powerful as our main 3ds Max plugin/submitter, but is included here for completeness.
WHEN THINGS GO WRONG
Things do regularly go wrong with network rendering. However, that’s ok as our plugins including 3ds Max have a wealth of deep, debug logging, reporting known issues and attempting to self-heal where possible or at the very least, report exactly the issue, making available all applicable information in our logs. This is super handy if you ever need to get in touch with the Thinkbox Support team, who have much experience in interpreting these logs.
It probably helps that we have one of the most experienced 3ds Max plugin development teams in the industry as can be seen with all our other Thinkbox software products we offer, which unsurprisingly, work rather well in partnership with Deadline!
Handy stuff, eh? If all else fails, our docs are a super rich resource of info for our users as well.
IT’S A WRAP
Hold on a second. There’s more...it doesn’t stop there. The 3ds Max (SMTD) and 3ds Cmd in-app submitters both provide pre-flight sanity check scripts to ensure you don’t submit a ‘known’ bad scene setup, thereby saving valuable render time resource.
Additional features include Quick Draft for movie generation or image conversions after a render job has completed, Render-To-Texture support, State Sets, Batch render support, RPM (Render Pass Manager) support and brand new Deadline 8 features such as GPU affinity support for Redshift renderer for 3ds Max.