Hi @Yaroslav this is indeed possible however a bit clunky for the moment, but here a full step by step.
- Install pip with
c4dpy -m ensurepip
- Install Python Visual Studio Debugger with
c4dpy -m pip install ptvsd.
- Within Visual Studio in your
launch.json just set up a basic attach setting, here is mine but for more information see
Python debug configurations in Visual Studio Code.
"name": "Cinema 4D: Remote Debugger Attacher",
- The *.pyp plugin should be of course in the same workspace as your
- Edit the *.pyp plugin and write the next code in the first line of your pyp file.
ptvsd.enable_attach(address = ('127.0.0.1', 3000))
- Start Cinema 4D, wait until its UI is loaded, meaning the pyp plugin is loaded, and the client (your script) is attachable from a debugger.
- Run the previously created debug configuration (called
Cinema 4D: Remote Debugger Attacher).
- Put a breakpoint somewhere (like in the Execute of a CommandData) to trigger the BP.
Note this also works nicely for the script, however for script you should call
ptvsd.wait_for_attach() after the