AWS Thinkbox Discussion Forums

Request: Cinema 4D R23 Submission Plugin

I checked the merge request for proper testing. Can you include the “Full Command” line without the scene path?

/opt/maxon/cinema4dr23.110/bin/c4d_clr" -nogui -noopengl -redshift-gpu 4 -redshift-gpu 5 -redshift-gpu 6 -redshift-gpu 7 "-DeadlineConnect 40931 303908713787

I’ve requested a CLR NFR license for myself to test, and also access to the documentation, there used to be a sparse pdf distributed with the linux installer, I wonder if the updated version had commands changed?

If I run the CommandLine.exe on my Windows laptop I get the folllowing output

General Options:
-license [ip [port]] ... specifies the license server
  use the following line to attach the process to the console:
  start /b /wait "parentconsole" "COMMANDLINE.EXE" -nogui
-minimalviewport     ... use minimal viewport settings
-oglversion=xxx      ... force a specific OpenGL version. xxx must be 100 * (major version) + (minor version)
-oglmultithreading=x ... enable or disable OpenGL multithreading. (x=0: unchanged, x=1: disable, x=2: enable) nVidia only
-title               ... set the window title
-layout filename     ... use a custom startup layout
-crashtest           ... causes an exception to test the built-in signal handler
-nocrashhandler      ... suppress use of the application's crash handler
-debug               ... enable debug output
...
Non-Commercial Sample Copy
...
Render Options:
-render filename          ... specify a file to render
-frame from [to [step]]   ... specify start frame, end frame and frame step. 'to' and 'step' are optional
-oimage imagename         ... override the image output path for rendering
-omultipass imagename     ... override the multipass output path for rendering
-oformat imageformat      ... override the image output format to TIFF/TGA/BMP/IFF/JPG/PICT/PSD/PSB/RLA/RPF/B3D
-oresolution width height ... override output image size
-threads threadcnt        ... specify number of threads (0 for auto-detection)
-take takename            ... specify the take name for rendering
-bugslife_autologin ... logs into bugslife automatically after program start

Renderator Options:
-renderator scenepath [refpath] ... specify the directory to render
-renderator_opengl ... Use hardware OpenGL rendering

If I use the noopengl switch sent via Deadline (this doesn’t appear in R21 or R23)
image

What I do see in the R21 CLR is this

Redshift Options:
    -redshift-gpu <GPU ID>          ... Use a specific GPU when rendering. <GPU ID> is the GPU ordinal/index. Repeat the option for multiple GPUs
    -redshift-log-console <Level>   ... Output log messages to the C4D console of severity up to <Level>. Level can be one of Error|Warning|Info|Detailed|Debug|DebugVerbose|Max
    -redshift-license-maxon-disable ... Disable automatic checkout of Maxon licenses

And this isn’t in R23 (I’ll check the plugin now!)
image
^ok I didn’tdo the bit shown above
Manually add the plugins path, then copy the plugins.json
{

    "identification": "plugins",

    "content": {

        "referenceDataType": "net.maxon.interface.datadictionary-C",

        "_impl": {

            "_mode": 2,

            "_data": [

                {

                    "dataType": "net.maxon.datatype.id",

                    "content": "searchPaths"

                },

                {

                    "dataType": "(net.maxon.interface.url-C,bool)",

                    "isArray": true,

                    "content": [

                        {

                            "_0": {

                                "referenceIndex": 0,

                                "referenceDataType": "net.maxon.interface.url-C",

                                "_scheme": "file",

                                "_path": "C:/Program Files/Maxon Cinema 4D R23/plugins",

                                "_authority": {},

                                "_data": {}

                            },

                            "_1": true

                        }

                    ]

                }

            ]

        }

    }

}

from here
C:\Users\antg\AppData\Roaming\Maxon\Maxon Cinema 4D R23_DBA5903C\plugins.json
to
C:\Users\antg\AppData\Roaming\Maxon\Maxon Cinema 4D R23_DBA5903C_x\plugins.json
this removes this issue, I now need to check the linux install and see if this translates


I get more issues
2020-12-15 14:45:10: 0: STDOUT: WARNING: net.maxon.c4d.volumes(pyvolume.cpp): Definition for net.maxon.python.error.python(object) is missing, did you forget MAXON_DECLARATION_REGISTER? [object_impl.cpp(4112)]

Think I need to sort this one first though
2020-12-15 14:45:09: 0: STDOUT: WARNING: Error loading file:///opt/maxon/cinema4dr23.110/bin/corelibs/python.xso64: Could not load dll. Error code: libpython3.7.so.1.0: cannot open shared object file: No such file or directory. (file:///opt/maxon/cinema4dr23.110/bin/corelibs/python.xso64) [linux_dll.cpp(95)] [general.cpp(401)]


There is an env setup

/opt/maxon/cinema4dr23.110/bin/setup_c4d_env



# source this file to setup the Cinema 4D environment

C4D_BASE=$PWD/..

export LD_LIBRARY_PATH=$C4D_BASE/lib64:$C4D_BASE/bin/resource/modules/python/libs/python37.linux64.framework/lib64
export PATH=$PATH:$C4D_BASE/bin
export LC_NUMERIC=en_US.UTF-8
export PYTHONPATH=$C4D_BASE/bin/resource/modules/python/libs/python37.linux64.framework/lib/python3.7/lib-dynload

It looks like the /… at the end of C4D_BASE get passed on rather than using the folder above pwd

regardless, it still has an issue with this file
2020-12-15 15:00:56: 0: STDOUT: WARNING: Error loading file:///opt/maxon/cinema4dr23.110/bin/corelibs/python.xso64: Could not load dll. Error code: libpython3.7.so.1.0: cannot open shared object file: No such file or directory. (file:///opt/maxon/cinema4dr23.110/bin/corelibs/python.xso64) [linux_dll.cpp(95)] [general.cpp(401)]

I ended up putting the (corrected) ‘setup_c4d_env’ in /etc/profile.d/envvars.sh so it gets picked up by Deadline, this looks like it’s working

We’ve seen this problem with another customer in a ticket.

Just to be clear, you could also plunk setup_c4d_env into “/etc/profile.d/” and mark it as executable with chmod ug+x /etc/profile.d/setup_c4d_env and it becomes happy?

1 Like

Does that fix the C4D_BASE=$PWD/… issue?

I just hard coded it in as
export C4D_BASE=/opt/maxon/cinema4dr23.110/

more like chmood ugh :wink:

1 Like

I laughed far too hard at chmood. :rofl:

I think sourcing the C4D_BASE at boot affects running multiple versions on linux, so older versions won’t launch, there must be a better way to set these vars before launching the version of C4D

Also I saw this in the Arnold docs, interested in seeing how (if) the env var works and if it’s implementable by Deadline (since replacing C4D_PLUGINS_DIR)

For Commandline, specify the g_additionalModulePath environment variable.

Just to be clear, you could also plunk setup_c4d_env into “/etc/profile.d/” and mark it as executable with chmod ug+x /etc/profile.d/setup_c4d_env and it becomes happy?

@eamsler this didn’t work for me, but adding the env variables and hard coding them manually into ~/.bashrc seemed to work

Privacy | Site terms | Cookie preferences