Can two processes render to one OpenGL canvas?
I have three different processes running on the same machine. One of them owns an OpenGL window. I would like the other two to be able to render (quickly) to different rectangular portions of the OpenGL window.
If I can guarantee that they will nicely take turns executing OpenGL commands, is this possible?
Under Windows, it is possible with threads of the same process.
The function you are looking for is wglMakeCurrent:
My understanding is that this is not possible with any existing drivers. An OpenGL context is owned by just one process.
It's even dicey for two threads within a single process to each be making OpenGL calls to a single OpenGL context. (That doesn't need to be so by design, but it is often a problem with current drivers.)