AWS Thinkbox Discussion Forums

[SOLVED] Cannot batch render a 3D node (RedshiftRenderSettings)

Hey,

I’m rendering a Katana/Redshift file through Deadline and I get this error:

STDOUT: Cannot batch render a 3D node (RedshiftRenderSettings).

I have 1 node locked Redshift license installed in my machine. It works in Maya and Katana, just giving this error with Deadline.

Any tips?

Thank you!

Hello!

Which plugin is this getting rendered through? I ask because Redshift isn’t a ‘batch’ type plugin. (A batch plugin is one where we open the render program at the beginning of the task, and leave it open until all tasks have been completed)

Something you could try is enabling ‘Reload Plugin Between Tasks’ for that job.

More of the job report you got this error from might be helpful, and if you don’t want to strip out the sensitive info you can create a ticket at support.thinkboxsoftware.com. Just be sure to mention this forum thread, in cases I’m not the one that gets that ticket.

Hey, thanks for getting back to me.

I’m using the Katana plugin with a Katana file that works correctly in interactive mode. I’m also lauching the render from Deadline, not from with Katana (with the Deadline UI).
On the redshift forum I was told that

Blockquote
This error doesn’t come from the Redshift plugin itself. If it comes from Deadline, have you tried to ask them about what this error message could mean?

Here’s the full log:

Error

Error: Renderer returned non-zero error code, 1. Check the log for more information.
at Deadline.Plugins.PluginWrapper.RenderTasks(String taskId, Int32 startFrame, Int32 endFrame, String& outMessage, AbortLevel& abortLevel)

=======================================================
Type

RenderPluginException

=======================================================
Stack Trace

at Deadline.Plugins.SandboxedPlugin.d(DeadlineMessage baq)
at Deadline.Plugins.SandboxedPlugin.RenderTask(String taskId, Int32 startFrame, Int32 endFrame)
at Deadline.Slaves.SlaveRenderThread.c(TaskLogWriter adx)

=======================================================
Log

2020-01-06 19:34:08: 0: Loading Job’s Plugin timeout is Disabled
2020-01-06 19:34:10: 0: Executing plugin command of type ‘Sync Files for Job’
2020-01-06 19:34:10: 0: Synchronization time for job files: 53.860 ms
2020-01-06 19:34:10: 0: Synchronizing Plugin Katana from /opt/Thinkbox/DeadlineRepository10/plugins/Katana took: 0 seconds
2020-01-06 19:34:10: 0: Done executing plugin command of type ‘Sync Files for Job’
2020-01-06 19:34:10: 0: Executing plugin command of type ‘Initialize Plugin’
2020-01-06 19:34:10: 0: INFO: Executing plugin script ‘/root/Thinkbox/Deadline10/slave/vfx/plugins/5e13fb3eec79d30abcd99b39/Katana.py’
2020-01-06 19:34:10: 0: INFO: About: Katana Plugin for Deadline
2020-01-06 19:34:10: 0: INFO: Render Job As User disabled, running as current user ‘root’
2020-01-06 19:34:10: 0: INFO: The job’s environment will be merged with the current environment before rendering
2020-01-06 19:34:10: 0: Done executing plugin command of type ‘Initialize Plugin’
2020-01-06 19:34:11: 0: Start Job timeout is disabled.
2020-01-06 19:34:11: 0: Task timeout is disabled.
2020-01-06 19:34:11: 0: Loaded job: Teste_katanaHeadless (5e13fb3eec79d30abcd99b39)
2020-01-06 19:34:11: 0: Executing plugin command of type ‘Start Job’
2020-01-06 19:34:11: 0: DEBUG: S3BackedCache Client is not installed.
2020-01-06 19:34:11: 0: INFO: Executing global asset transfer preload script ‘/root/Thinkbox/Deadline10/slave/vfx/plugins/5e13fb3eec79d30abcd99b39/GlobalAssetTransferPreLoad.py’
2020-01-06 19:34:11: 0: INFO: Looking for legacy (pre-10.0.26) AWS Portal File Transfer…
2020-01-06 19:34:11: 0: INFO: Looking for legacy (pre-10.0.26) File Transfer controller in /opt/Thinkbox/S3BackedCache/bin/task.py…
2020-01-06 19:34:11: 0: INFO: Could not find legacy (pre-10.0.26) AWS Portal File Transfer.
2020-01-06 19:34:11: 0: INFO: Legacy (pre-10.0.26) AWS Portal File Transfer is not installed on the system.
2020-01-06 19:34:11: 0: Done executing plugin command of type ‘Start Job’
2020-01-06 19:34:11: 0: Plugin rendering frame(s): 1
2020-01-06 19:34:11: 0: Executing plugin command of type ‘Render Task’
2020-01-06 19:34:11: 0: INFO: Stdout Redirection Enabled: True
2020-01-06 19:34:11: 0: INFO: Asynchronous Stdout Enabled: False
2020-01-06 19:34:11: 0: INFO: Stdout Handling Enabled: True
2020-01-06 19:34:11: 0: INFO: Popup Handling Enabled: False
2020-01-06 19:34:11: 0: INFO: Using Process Tree: False
2020-01-06 19:34:11: 0: INFO: Hiding DOS Window: True
2020-01-06 19:34:11: 0: INFO: Creating New Console: False
2020-01-06 19:34:11: 0: INFO: Running as user: root
2020-01-06 19:34:11: 0: INFO: Rendering with Katana version: 3
2020-01-06 19:34:11: 0: INFO: /home/avargas/Katana3.2v3/katana
2020-01-06 19:34:11: 0: INFO: Executable: “/home/avargas/Katana3.2v3/katana”
2020-01-06 19:34:11: 0: INFO: Setting Process Environment Variable REDSHIFT_SELECTED_CUDA_DEVICES to 0000000000000000
2020-01-06 19:34:11: 0: INFO: Argument: --batch --katana-file="/root/Thinkbox/Deadline10/slave/vfx/jobsData/5e13fb3eec79d30abcd99b39/stormtrooper_v01.katana" -t 1-1
2020-01-06 19:34:11: 0: INFO: Full Command: “/home/avargas/Katana3.2v3/katana” --batch --katana-file="/root/Thinkbox/Deadline10/slave/vfx/jobsData/5e13fb3eec79d30abcd99b39/stormtrooper_v01.katana" -t 1-1
2020-01-06 19:34:11: 0: INFO: Startup Directory: “/home/avargas/Katana3.2v3”
2020-01-06 19:34:11: 0: INFO: Process Priority: BelowNormal
2020-01-06 19:34:11: 0: INFO: Process Affinity: default
2020-01-06 19:34:11: 0: INFO: Process is now running
2020-01-06 19:34:11: 0: STDOUT: /home/avargas/Katana3.2v3/katana: line 6: /home/avargas/3delight-1.6.19/.3delight_bash: No such file or directory
2020-01-06 19:34:11: 0: STDOUT: [INFO MAIN]: Crash handling is disabled.
2020-01-06 19:34:11: 0: STDOUT: [INFO python.Main]: Launching Katana 3.2v3 …
2020-01-06 19:34:11: 0: STDOUT: [INFO python.Main]: Launching Katana Batch…
2020-01-06 19:34:12: 0: STDOUT: [INFO python.Main]: KATANA_RENDER_TILE_SIZE defaulting to 256x256
2020-01-06 19:34:12: 0: STDOUT: [INFO python.Main]: KATANA_IMAGE_MEMORY defaulting to 31171 MB
2020-01-06 19:34:12: 0: STDOUT: [INFO python.Main]: KATANA_IMAGE_DISK_MEMORY defaulting to 0 MB
2020-01-06 19:34:12: 0: STDOUT: [INFO python.Main]: KATANA_SPEC_CACHE_ENABLED defaulting to 0
2020-01-06 19:34:13: 0: STDOUT: [INFO python.MainBatch]: Number of 2D threads: 25
2020-01-06 19:34:13: 0: STDOUT: [INFO python.MainBatch]: Number of 3D threads: Renderer’s Default thread number
2020-01-06 19:34:13: 0: STDOUT: Cannot batch render a 3D node (RedshiftRenderSettings).
2020-01-06 19:34:13: 0: INFO: Process exit code: 1
2020-01-06 19:34:13: 0: Done executing plugin command of type ‘Render Task’

The only thing I can think off right now is that to launch Katana I need to specify Redshift as the renderer, the standard renderer is 3Delight, so maybe that could be it?

Thank you!

The line:
/home/avargas/Katana3.2v3/katana: line 6: /home/avargas/3delight-1.6.19/.3delight_bash: No such file or directory

makes me think you’re right about Katana looking for the default 3delight. Is it possible to set a default renderer in the scene file? Or maybe you need to choose the render node on submission?

Nothings jumping out at me from the Katana docs on how to set a default renderer for the Katana file though, if you find it could you let me know?

Ok, I found part of the solution to this problem!

What happens is that to use Redshift (or any render for that matter) in Katana we need to load the plugin in a launch script. I think that is how Foundry found a nice and clean way for us to load a bunch of different render engines cleanly from startup. This allows us in production to even launch different versions of the same render engine in a facility to test upgrades and etc.

The problem with this launch script is that it doesn’t inform Katana’s batch script, which is what manages multi frames renders.

After I found out that this was a different script, I went in there and added the same environment variables we use on the regular launch script and it had no problem picking up Redshift and rendering to disk.

The only thing I’m missing now is that Deadline can’t get Redshift’s license for some reason. It’s pointing to the right path in /root/redshift but I think it’s a permission problem. It’s the very last problem I believe I need to solve.

My first line of action is to see if there’s anyway I can edit this path inside deadline to a new one that doesn’t need root privileges ( /home/avargas/redshift ). If that’s not the case, I’m not sure what to do for now.

Any ideas?

Here are the links to the two separate threads if anyone is having this same problem!

https://www.redshift3d.com/forums/viewthread/29147/
https://community.foundry.com/discuss/topic/150760/launch-katana-with-redshift-on-headless-mode

Thank you!

Great work!

As for setting the redshift license path, it seems like you’re using a node-locked license but the Redshift docs on Node-locked licenses don’t mention anything about being able to set the path. You might be able to move the license file you made and set the new location in Redshift. But I don’t have a node-locked license & redshift setup to test that theory out on.

You could also relax permissions on that particular file, but moving it might be simpler.

Hey Justin,

Thanks for the reply. What I find odd is that I can batch render Katana in the command line and it picks up Redshift without a problem, same for Maya. On Deadline I get a black frame.
From the log, there are two parts that I think may be relevant.

The error:

2020-01-12 01:12:13: 0: STDOUT: [INFO python.RenderLog]: [ERROR plugins.Redshift]: License error: No license found (-1)
2020-01-12 01:12:13: 0: STDOUT: [INFO python.RenderLog]: [INFO plugins.Redshift]: License error: (RLM) No license for product (-1)

and line 101:

[INFO plugins.Redshift]: License path: /root/redshift

This path does leads to the license but the root folder needs SUDO priviledges to get in there. While inside Katana this is the path it takes:

[INFO plugins.Redshift]: License path: /home/avargas/redshift

They both lead to the same place but the difference is that the second is open.

How does Deadline picks up the license path? Is there a way to force it to point to the path Katana is pointing to?

Thanks!

As I suspected, the plugin path was the problem.

As Katana uses two different scripts, one for interactive and one for batch, the second one also needs to have the environment variable: REDSHIFT_LICENSEPATH = your/license/path

This point’s the batch render from Deadline to work with the correct path. Now everything is working.

@abelvargas, hy, can you please specify how to setups this two different scripts , for batch and for interactive modes ?

Privacy | Site terms | Cookie preferences