3dsMax 2015 and mentalray soft shadows

I’m having a problem in rendering correctly images with 3dsMax 2015 and mentalray. A quick search around the forums highlighted the same problem but no solution (op didn’t reply to a question from support).

I’m submitting tasks through 3ds Cmd (the normal submitter gives other errors that would require my IT department to rearrange things on network shares and it’s not going to happen), and everything is submitted correctly except the Soft Shadows setting. Any kind of scene I submit turns off soft shadows. All slaves have this problem.

3dsMax 2015 is SP4 and Deadline is 10.0.28.2

I’ve attached a scene for testing purposes.

SoftShadowTest.zip (34.8 KB)

Bumping for help…can support at least hint at something?
Thanks.

Hi Luca,

Sorry for the late reply, here is all you need to know (and a workaround!) :slight_smile:

Looking at this ancient post on the Autodesk forums

https://forums.autodesk.com/t5/3ds-max-forum/3dsmaxcmd-exe-no-soft-shadows/td-p/4147208

the issue has been around in 3dsmaxcmd.exe since at least 2010 (Deadline 3.1!), and it appears that is was an Autodesk bug where the soft shadows global multiplier was mishandled by the command line renderer. Given that Autodesk does not ship mental ray with 3ds Max anymore, it probably never got fixed and never will be.

Here is the documentation of the feature:

Soft Shadows Precision
A global multiplier for the Shadow Samples setting in all lights casting soft shadows. This includes all photometric lights (Target Light, Free Light, mr Sky Portal), as well as mr Sun, mr Area Omni, and mr Area Spot. Typically the light should be set to cast ray traced shadows, although in some cases shadow maps work too.
Possible multiplier values are 0.125, 0.25, 0.5, 1, 2, 4, 8, and 16. The leftmost slider position (“Soft Shadows off”) is equivalent to turning on Area Lights/Shadows as Points. The remaining slider positions are also available as the Global Tuning Parameters rollout Soft Shadows Precision control.

Thankfully, I have 3ds Max 2017 installed on my machine, and it still ships with mental ray, so I was able to test, reproduce, and work around the issue.

The trick I used was to assign a Pre-Render MAXScript to the job via the Advanced tab of the 3dscmd submitter. The script contained just the line

renderers.current.softshadowsprecision = 1.0

I saved that script to a folder, picked it in the submitter, and when I submitted the 3dscmd job, the soft shadows rendered as expected. You can vary the multiplier between 0.125 and 16.0, but it allows any custom values too. 1.0 corresponds to the 1x slider position in the VFB, and there is a Global Tuning Parameters rollout in the Renderer tab of mental ray (at least in 2017) that has a drop-down list with those values.

It is not super elegant, but it works. You could also think about automating it by editing the 3dscmd submitter to include the script if mental ray is the current renderer, so you don’t have to populate that field manually each time…

I hope this helps!

Thanks for the reply, but it doesn’t solve the problem.
The script works, if I run it in 3ds Max the soft shadow value is changes, but when I submit the job with the pre-render script assigned, the soft shadows are still off.
The slaves I’m using to render still have Backburner installed (version 2019, the latest available on Autodesk’s website), can this interfere in how Deadline manages the task?

[edit] I’ve also noticed that the two slaves are rendering the same frame instead of slave 1 rendering frame 1, slave 2 rendering frame 2.
Maybe there’s something wrong with the 3dsCmd submitter?

Hi Luca,

That sounds strange, I did my testing in Deadline and it worked as expected. Of course, I was not running your version of 3ds Max, so there could be a difference. I don’t think having Backburner around would be related to the issue.

The command line arguments that Deadline sets when rendering a frame include start:F end:F where F is the frame to be rendered. If the 3dsmaxcmd does not handle those parameters right in your version, then it is probably not Deadline’s fault.

In your initial post, you said

(the normal submitter gives other errors that would require my IT department to rearrange things on network shares and it’s not going to happen)

I would love to know more about these issues - IMHO the 3dsMax plugin and SMTD submitter are the only reasonable means to use 3ds Max with Deadline. There isn’t much we can do to fix bugs in 3dsCmd regardless of the version of 3ds Max, while the Lightning.DLX we use to talk to 3ds Max in the regular plugin is fully under our control.

I render aircrafts for various customers. Paint scheme and some hardware details change between customers, but everyone pretty much is the same thing, and every customer needs the same cameras, point of views, and lighting setup. Every customer also needs to be self-contained, but if I create a scene for customer A, I need to quickly switch to customer B, C, D, and so on.

I achieve this by setting up a 3ds Max project and have all paths relative to the customer’s root and have scenes I render use Xrefs. It works pretty well, but due to the large file size of the various Xrefs, having a centralised repository on a network drive is unfeasable: load/save times will be too long, and too much stress on the network.
So I use local drives and SVN to manage stuff between computers.

If I use the standard submitter the scene doesn’t load any of the Xrefs or environmental maps; if I choose to copy files with the scenes the geometry is there but not the textures. But the soft shadows are there.
If I use the Cmd submitter the files and textures are there but not the soft shadows.

This is actually a problem I’ve encountered with other render managers, and when I asked their support about this, they said it will work if I copy Xrefs on a network drive…however this would require having to deal with my IT.

Backburner has worked fine until we switched to Windows 10, then due to a bug Autodesk is not going to solve (as Backburner is no longer supported), renders might be flagged failed…I’ve had 5 minutes renders flagged as failed due to this, which is ridiculous. There’s a possible solution to this, but due to domain policies within the company, I can’t apply it…or better, I can apply it and it will work until IT forces domain policies on all computers (which happens more than once in a day).

And of course the company deems unnecessary for me to move from Max 2015 to Max current version plus Vray :frowning: