Sharing surfaces across processes

We are re-architecting our system to use EGL instead of BCL. One thing that is required is multiple process surface sharing. I don’t see how to do this looking at the egl spec (1.4 April 8th 2009). Is there a way that I don’t see? – Can we implement this as an extension to surface types?


I’m just curious, what’s the use case for this?

One recent case is this:
Two processes:
Process 1) main system using 1 OpenGL-ES-2.0 context, and 1 2D context
-This system does some fancy animations etc. It has a scene graph and one special type of node is using a surface that is shared with process 2. Process 2 writes to the surface, and 1 renders it into the scenegraph.

Process 2) is a widget engine. It downloads things from the internet, and is generally not trusted. It renders its widgets to a shared surface which is rendered in the 3D scene by process 1).

Right now we are re-architecting the system. On of the things to do is to use more “open” standards. EGL is maybe not more open, but it is at least more “alive”:slight_smile: