Multithreading with Panda3D

I’ve been trying to run a separate process spawned by the same Panda3D script that creates my virtual environment. However, while this process is running, Panda3D does not display anything. If I end the external process, panda3d renders as normal. I have a task that runs every frame in the panda3d portion of the code that is executing and interacting with the external process.

The external process is color tracking using webcams and sending 3d coordinates to panda3d. I would expect panda3d to display images and be laggy at the worst, but all I get is a black screen.

Any ideas on what might be going on?


When you say “process”, what do you mean exactly? Did you spawn it with something like fork or the subprocess module, or did you use something like os.system() instead? From what you describe, it certainly sounds like your process is blocking the main thread.


thanks for the input.
turns out an error was occurring in the python process running panda and it wasn’t being reported so I couldn’t tell what was going on