we just tried to use the ‘Stereo Camera Jobs’ options in SMTD for the first time - and it (we?) failed miserably
Several issues:
After submission the cameras somehow got screwed up. The ‘LE’ job had ‘Camera=VRayLight016’ in the submission params. The ‘RE’ job had ‘Camera=RightCamera001’ set as expected. This resulted in the following error message for the ‘LE’ job:
In the Job Properties:
For the ‘LE’ job, it wasn’t possible to change ‘Render Options / Camera’ under ‘3dsmax Settings’ as there was no ‘Camera’ setting (see attached screenshot). In the ‘RE’ job the ‘Camera’ showed up under ‘3dsmax Settings’ just as usual.
The output files of the ‘RE’ job were not names ‘RE_’ in the beginning (nor any other position in the file name) despite it saying so in the output menu of the job/task in the Monitor. As the ‘LE’ job tried to render from ‘VRayLight016’ it could apparently not create any files at all.
We tried to create a proper job for the left eye by re-submitting the ‘RE’ job and then setting the camera to ‘LeftCamera001’. This worked but for some reason it was ignored for the output. This new ‘LE’ job did still render the right eye camera and also not add ‘LE_’ at the beginning of the file name - thus overwriting the previously rendered frames from the ‘RE’ job.
All dependent Draft jobs failed as well as they were (both ‘RE’ and ‘LE’ Draft jobs) looking for files starting with ‘RE_’.
This was with a modified/updated version of SMTD which was posted today by Mike here: https://forums.thinkboxsoftware.com/viewtopic.php?f=205&t=13654&p=61517#p61511
BUT: when submitting it from a different machine to test and double-check it did not mix up the cameras and actually render different views - but it still did neither prefix ‘LE_’ nor ‘RE_’ to the output files. Plus: it seems to have swapped left and right eye - although i will have to double-check this with the artist who set up the scene tomorrow.
After that we went back to the official un-modified 7.2.0.10 SMTD and tried again from the machine that we sent the first job from. This time the cameras in the submission params and 3ds settings were correct. But still no file name prefix - and probably also with swapped views (again pending confirmation as above).
Unfortunately, this is quite a deal breaker for our current project. Do you think there is a quick solution to this or should we switch to manual stereo rig setups?
This is with:
3ds Max 2016
Deadline 7.2.0.10
Windows7
Autodesk’s Stereo Camera Rig plugin 1.1.0 (according to the installer; the website says 1.0.0)
The SMTD Stereo Camera code is just a first iteration and is bound to have problems.
The way it resolves the 3 cameras of a Stereo Rig is by looking in the Stereo Rig Head Object’s .childen property (because that’s the only way MAXScript seems to “see” the cameras of the rig). So if you parented anything to the Stereo Rig, like a VRay Light for example, it would be incorrectly assumed to be part of the rig.
We will add some filters to ensure only Cameras are collected when working with Stereo rigs, and this might fix the other issues you reported as they sound like side effects of that bug.
We cannot post a fix immediately because my code is waaaay ahead of what is currently shipping in the Beta, and I have to figure out what is going on first…
However, you could try opening the SubmitMaxToDeadline_Functions.ms file in your Repository\submission\3dsmax\Main\ folder, locating the function fn GetStereoCamerasFromCurrentView = … and modifying the line
local theCameras = (for o in theParents[1].children collect o)
to
local theCameras = (for o in theParents[1].children where isKindOf o Camera collect o)
Save the file and restart SMTD. See if that fixes anything…
Looking at the error, the return result of the SMTDFUnctions.GetStereoCamerasFromCurrentView() call must have been ‘undefined’, which appears quite impossible when I look at the code.
Can you please send the ACTUAL error report from the MAXScript Listener (all of it!), not just the pop up message?
Also, can you please attach the SMTD files (both SubmitMaxToDeadline.ms and SubmitMaxToDeadline_Functions.ms) you are using?
There is a big chance they are different than what I am looking at…
Also a small Max scene that shows the problem would be nice, so we can test with the same data.
If you start 3ds Max, open SMTD and type in the MAXScript Listener
SMTDSettings.StereoCameraMode
what do you get?
The only way I could see that function returning ‘undefined’ would be if SMTDSettings.StereoCameraMode was neither one of the possible options (I will fix that possible case in the next build).
You can also try changing the #off: case with default: in the following code:
local theCameras = (for o in theParents[1].children where isKindOf o Camera collect o)
case SMTDSettings.StereoCameraMode of
(
default: #(#(theViewCamera), #(""))
#leftright: #(#(theCameras[1], theCameras[2]), #( "LE","RE") )
#center: #(#(theCameras[3]), #( "CE"))
#left: #(#(theCameras[1]), #( "LE") )
#right: #(#(theCameras[2]), #( "RE") )
#all: #(theCameras, #( "LE","RE","CE"))
)
After modifying the .ms file like you suggested i could successfully submit left and right eye to the farm. The jobs are actually using the correct render cameras. It still does not prefix the files with ‘LE_’ and ‘RE_’ so the depending Draft jobs fail. But i guess this is part of the beta/wip status of the stereo support, right?
Yes, you are experiencing the growing pains of the new Stereo Camera implementation.
My internal version is WAY different than yours, and I will try to get it into the next build, or send you my files as soon as I can confirm they are safe to use.
Thank you for the bug reports, you have helped us tremendously!
You’re welcome - although it indeed does hurt a bit
Regarding the swapped camera output i was suspecting to happen yesterday: i can still not say 100% sure that this is the case.
I’ll let you know as soon as i have a definite answer on this.
Please don’t hesitate to send over your internal version in case it doesn’t make it into the next beta or if you think it’s in a state that seems useful. We’re happy to test and bug report further.
We have merged my latest changes into the current 7.2 beta code stream and we hope to have the next Beta build out in Thursday. In the mean time, I will run some tests to see if I can break it.
Good to know.
I don’t think whoever wrote the Quick Draft implementation was aware of my changes for Stereo Cameras, and I have not looked at the Quick Draft code yet. I am off to do that and fix it if I can…
just saw that 7.2.0.14 is out. Looking forward to trying this out!
Quick question: will your updated SMTD code also work with 7.2.0.10? Not sure when i’ll be able to upgrade but would of course like to test your new SMTD.
we just upgraded to 7.2.0.14 and there are still quite some issues.
The good news: so far it has not mixed up the cameras for the different views.
The bad news:
it still does not prefix the output files with ‘LE_’ and ‘RE_’ respectively so the jobs overwrite each other.
when sending the scene with the ‘preview frames’ option the ‘[LE]’/’[RE]’ is only being added to the ‘PREVIEW FRAMES’ jobs but not the ‘REST OF FRAMES’ ones.
dependent Draft jobs are still failing due to them looking for files named ‘LE_…’/‘RE_…’.
Regarding the latter: is/will it actually be possible to define the naming convention for this somewhere in Deadline’s settings? We’re usually using ‘_left’/’_right’ in our pipeline and would actually like to keep it that way.
If you need any more infos or tests from us let me know.
I have not been able to reproduce the LE/RE labeling problem yet, but SMTD has dozens of code paths and it appears that some option you have enabled is messing it up. I wonder if you could save a preset from your SMTD settings and attach it here so I can run with the exact same SMTD settings you are using?
A stupid question - does it fail on a SIMPLE scene (make a teapot, set renderer to Scanline, set range to 0-100, make a Stereo Rig, set an output file name and fire away). I understand it fails with your production scenes, but I want to know if a much more basic setup is still causing you troubles (since it is working here after all). Then we will have to figure out the details that make yours fail - it could be in the SMTD settings, VRay special paths that are always a PITA to support correctly, etc.
Is the output that is being messed up a RAW/Split output from VRay, 3dsMax’ own rendOutputFilename, Render Element paths, some of them, or all of them? Any details you can provide would be helpful.
I will check the Preview/RestOfFrames issue, as I am looking at another Preview frames error report right now anyway…
As for labeling, I guess we could make the LE/RE/CE labels customizable. However, at this point it would be a huge undertaking to make the whole file name structure fully customizable, e.g. putting the label INSIDE the file name instead of as a prefix. So “left_somefilename0000.ext” would be possible, but “somefilename_left_0000.ext” is not in the cards for 7.2…
SMTD preset and 3ds max file of the failing scene attached (same name of zip, but different content).
The scene is set up to save the output of the VFB, there’s no path in the standard 3ds Max ‘Save File’.
When i tried your suggested teapot scene using scanline renderer the labeling worked fine.
As a first/quick step it would already very much appreciated if the labels themselves could be configured (e.g. ‘left_’ instead of ‘LE_’). That way it would at least not break our pipeline in the comp dept. anymore. Do you think that’s possible?
Thanks! Will try to run with it and see what happens.
Sounds like the issue is somewhere in the VRay VFB code - as mentioned, handling those paths is not easy.
Done!
I am exposing them only via the Repository Defaults INI file, so you can change them for the whole company at once, but they cannot be modified via the UI. If the INI file does not contain valid values, or the values are “”, they will default to the LE/RE/CE factory values.
I think I found and fixed the problem, but I would like you to test this version and let me know if it works for you: SMTD_StereoCameraFix_20150821.zip (171 KB)
To change the prefixes of the Stereo Camera outputs, you can modify the file
\[DeadlineRepository]\submission\3dsmax\Main\SubmitMaxToDeadline_Defaults.ini
by adding to the existing [JobSettings] category: