EGL_MESA_screen_surface version 4
Adam Jackson
ajax at nwnk.net
Wed Mar 23 17:47:17 PST 2005
On Wednesday 23 March 2005 20:32, Jon Smirl wrote:
> On Wed, 23 Mar 2005 16:38:34 -0700, Brian Paul
> Did you note somewhere that it is illegal to destroy a surface while
> it is being displayed?
Why would that be illegal, as opposed to merely undefined?
> Why is there a eglCreateScreenSurfaceMESA() in addition to
> elgCreateSurface(), shouldn't all surfaces be created equal?
Because there's not an eglCreateSurface. There are three distinct surface
creation functions:
eglCreatePbufferSurface
eglCreatePixmapSurface
eglCreateWindowSurface
http://www.khronos.org/opengles/documentation/opengles1_1/gl_egl_ref_1_1_20041110/index.html
> Then if
> you try to scanout a surface first it needs to compatible with the
> mode.
Scanned-out surfaces can never be incompatible with the display mode. If you
switch between two surfaces with different display attributes, then that's an
implicit mode switch.
> Next Mesa needs to move it into VRAM if it already isn't there.
> There should be no reason that surfaces that aren't being scanned out
> can't migrate to AGP memory.
Actually what you do is just throw out the old surface and mark it clobbered,
so that when the owner of the old surface tries to draw to it, it knows to
regenerate the scene.
If you're reading pixels back from the framebuffer, you have lost.
> In the composited desktop model all top level window get their own
> surface then the desktop composits them into a single image. Now let's
> assume these top level windows are compatible with monitor modes.
*blink*
The backing storage for these windows will not be screen surfaces. Therefore
there's no "monitor mode compatibility" to worry about.
> If
> all surfaces are created equal I should be able to transparently make
> each top level window full screen and rotate through them.
But all surfaces are not created equal. Instead you will use pbuffers or FBOs
for the offscreen storage of each window, and apply those as textures to a
scene geometry that you draw to the screen surface.
- ajax
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.freedesktop.org/archives/dri-egl/attachments/20050323/c966a564/attachment.pgp
More information about the dri-egl
mailing list