I am making a PyQt5 interface to start different window types, namely pyglet (through psychopy), QOpenGLWidget and Panda3D.
When I launch windows individually everything works fine, but when I launch Panda3D concurrently with my QOpenGLWidget the widget updates but Panda3D shows a black screen.
The purpose of running the windows concurrently is that Panda3D shows a navigable virtual environment and the widget appears on top (with transparency) for visual stimuli.
I suspect this has something to do with OpenGL contexts but I can’t quite get my hand on a working solution (and I looked!).
Any help would be very appreciated!
If what I want to do is not known to be possible (or desirable), what would be the way of putting the code of my widget (initializeGL, paintGL functions), destined to create a texture based on a stimulus class which is updated each frame (meaning that I need to pass the changing attributes to the shader in paintGL), in Panda3D?
This was not obvious from the threads I read (sadly there are not many).
Side note: I update both Panda3D and the widget on a frame per frame basis, using taskMgr.step and widget.repaint, so my understanding is that they belong to the same thread and share the same context, which I tried to solve without success.