Inter-Process Communication (IPC) in OpenGL


I would like to ask if it is possible to do Inter-Process Communication (IPC) in OpenGL. I have an OpenGL texture in application A, which I want to share to application B using shared memory. So far, we manage to do this using DirectX 11, which exports the texture in A, and is imported in B using OpenGL. Specifically, we use a combination of the functions in the EXT_external_objects and EXT_external_objects_win32 extensions (e.g. ImportMemoryWin32Handle/NameEXT).

Now, I would like to export an image from OpenGL. I know that in Vulkan (with the proper extensions), you can export a block of memory and get an OS-specific shared handle to it, which is usable across processes. Is there something similar exclusively in OpenGL only? Or, is there an “export” counterpart of ImportMemoryWin32Handle/NameEXT?

This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.