Multiple Modo Errors.

We have recived a few licenses for testing at our fecility, but are having major problems with the modo integration.

The first and most anoying problem is that path mapping does not apply to modo scenes, so if a scene is submitted from a windows machine the MAC’s will fail due to texture path errors.

The other problem is that many of our modo scenes cannot render in Deadline. (we can render them manually using the slave mode but in Deadline we get a error from all our machines)

[code]=======================================================
Error Message

Command ‘!scene.open {C:\Users\User\AppData\Local\Thinkbox\Deadline\slave\User-pc\jobsData\AFT_sc82_Doer_animation_v03_mk.lxo} normal’ failed with -2147483648. Check the meaning of this error code in the modo error codes message table, resource:msglxresult.cfg

=======================================================
Slave Log

0: Task timeout is disabled.
0: Loaded job: doer2 (999_050_999_085079a8)
0: INFO: StartJob: initializing script plugin Modo
0: INFO: About: modo Plugin for Deadline
0: INFO: Starting monitored process: Modo0
0: INFO: Starting monitored managed process Modo0
0: INFO: Any stdout that matches the regular expression “Unknown command: .*” will be handled as appropriate
0: INFO: Any stdout that matches the regular expression “.*failed with (-?[0-9]+)” will be handled as appropriate
0: INFO: Any stdout that matches the regular expression “)\s+Frame\s+([0-9]+)” will be handled as appropriate
0: INFO: Stdout Handling Enabled: True
0: INFO: Popup Handling Enabled: True
0: INFO: Using Process Tree: True
0: INFO: Hiding DOS Window: True
0: INFO: Creating New Console: False
0: INFO: Not enforcing a build of modo
0: INFO: Render Executable: “C:\Program Files\Luxology\modo\601_sp3\modo_cl.exe”
0: INFO: Render Argument: -cmd:"@“C:\Users\User\AppData\Local\Thinkbox\Deadline\slave\User-pc\plugins\render.pl” “C:\Users\User\AppData\Local\Thinkbox\Deadline\slave\User-pc\jobsData\job0.txt” “C:\Users\User\AppData\Local\Thinkbox\Deadline\slave\User-pc\jobsData\ack0.txt”"
0: INFO: Startup Directory: “C:\Program Files\Luxology\modo\601_sp3”
0: INFO: Process Priority: BelowNormal
0: INFO: Process Affinity: default
0: INFO: Process is now running
0: INFO: Waiting until modo is ready
0: STDOUT: @start modo_cl [52162] Luxology LLC
0: STDOUT: Job filename: C:\Users\User\AppData\Local\Thinkbox\Deadline\slave\User-pc\jobsData\job0.txt
0: STDOUT: Ack filename: C:\Users\User\AppData\Local\Thinkbox\Deadline\slave\User-pc\jobsData\ack0.txt
0: STDOUT: Sending ack: READY
0: STDOUT: Received command: EXECUTE: log.toConsole true
0: STDOUT: Sending ack: SUCCESS
0: STDOUT: Received command: QUERY: query platformservice path.path ? resource
0: STDOUT: Sending ack: C:\Program Files\Luxology\modo\601_sp3\resrc
0: INFO: LxResult config filename: C:\Program Files\Luxology\modo\601_sp3\resrc\msglxresult.cfg
0: STDOUT: Received command: EXECUTE: !scene.open {C:\Users\User\AppData\Local\Thinkbox\Deadline\slave\User-pc\jobsData\AFT_sc82_Doer_animation_v03_mk.lxo} normal
0: STDOUT: Command ‘!scene.open {C:\Users\User\AppData\Local\Thinkbox\Deadline\slave\User-pc\jobsData\AFT_sc82_Doer_animation_v03_mk.lxo} normal’ failed with -2147483648

=======================================================
Error Type

ManagedProcessAbort

=======================================================
Error Stack Trace

at FranticX.Processes.ManagedProcess.FlushStdout(Boolean noHandling)
at Deadline.Plugins.ScriptPlugin.FlushMonitoredManagedProcessStdout(String name)
at CallSite.Target(Closure , CallSite , CodeContext , Object , Object )
at WaitForAck$556(Closure , PythonFunction , Object )
at IronPython.Runtime.PythonFunction.FunctionCaller1.Call1(CallSite site, CodeContext context, Object func, T0 arg0) at CallSite.Target(Closure , CallSite , CodeContext , Object ) at SendCommand$557(Closure , PythonFunction , Object , Object , Object ) at IronPython.Runtime.PythonFunction.FunctionCaller3.Call3(CallSite site, CodeContext context, Object func, T0 arg0, T1 arg1, T2 arg2)
at System.Dynamic.UpdateDelegates.UpdateAndExecute5[T0,T1,T2,T3,T4,TRet](CallSite site, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4)
at CallSite.Target(Closure , CallSite , CodeContext , Object , Object , Object )
at System.Dynamic.UpdateDelegates.UpdateAndExecute4[T0,T1,T2,T3,TRet](CallSite site, T0 arg0, T1 arg1, T2 arg2, T3 arg3)
at StartJob$551(Closure , PythonFunction , Object )
at IronPython.Compiler.PythonCallTargets.OriginalCallTarget1(PythonFunction function, Object arg0)
at IronPython.Runtime.PythonFunction.FunctionCaller`1.Call1(CallSite site, CodeContext context, Object func, T0 arg0)
at CallSite.Target(Closure , CallSite , CodeContext , Object )
at IronPython.NewTypes.Deadline.Plugins.DeadlinePlugin_1$1.StartJob()
at Deadline.Plugins.ScriptPlugin.StartJob(Job job)
[/code]

This error is most likely due to unused assets however unlike some of the other submit plugins you can’t make modo ignore any errors when opening.
Maybe there should be a option to ignore any error upon launch.

After some more diggin into the problem it appears that deadline does not copy the assets from the server down to the local render machine causing it to throw the error because the texture files des not exsist in the local folder.

Hi there,

All assets should be on a network accessible location, and the modo scenes should use the network paths. To render in a cross platform environment, I believe it works if you keep the scene file on the network as well, and then keep all asset paths relative to the scene file. Then when you go to submit the job, you would disable the option to submit the scene with the job. Then the slaves will load the scene directly from the network path, and because the asset paths are relative, modo should be able to find them regardless of the OS.

For modo, as far as we know we don’t have the option to ignore scene load errors. When we load the scene, we call modo’s “scene.open” function. If that fails, there isn’t much we can do about it other than report it.

Cheers,

  • Ryan