Skip to content

Commit

Permalink
EGL_KHR_platform_wayland: clarify EGLSurface locking (#160)
Browse files Browse the repository at this point in the history
When querying EGLSurface for EGL_KHR_BUFFER_AGE or rendering to it
it will resuilt in locking its back buffer until the next swap.
This behavior is long established in mesa and is intentional.

The rationale behind this behavior is to jarring partial content
that could be if mesa throwed the back buffer in the middle of rendering
due to resize.

This commit explicitly states this behavior, so it won't be
surprising for the end users and also adds a dependency on
EGL_EXT_buffer_age.
  • Loading branch information
kchibisov authored Jul 14, 2022
1 parent 84f25dd commit b11ad22
Showing 1 changed file with 12 additions and 0 deletions.
12 changes: 12 additions & 0 deletions extensions/KHR/EGL_KHR_platform_wayland.txt
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,9 @@ Dependencies
This extension is written against the EGL 1.5 Specification (draft
20140122).

The behavior of part of this extension is different depending on whether
the EGL_EXT_buffer_age extension is also present.

Overview

This extension defines how to create EGL resources from native Wayland
Expand Down Expand Up @@ -85,6 +88,11 @@ New Behavior
belongs to Wayland. Any such call fails and generates an
EGL_BAD_PARAMETER error.

Rendering to the obtained EGLSurface or querying it with EGL_BUFFER_AGE_KHR
will lock its back buffer preventing it from being dropped or resized,
until the next buffer swap. The rationale behind this behavior is to keep
operations result accurate until the next swap.

Issues

1. Should this extension permit EGL_DEFAULT_DISPLAY as input to
Expand All @@ -99,6 +107,10 @@ Issues
RESOLVED. No. Wayland has no pixmap type.

Revision History
Version 3, 2022/07/14 (Kirill Chibisov)
- Clarify EGLSurface back buffer locking behavior with regards to
rendering and surface querying operations.
- Add dependency on EGL_EXT_buffer_age.

Version 2, 2014/02/18 (Chad Versace)
- Change resolution of issue #1 from "no" to "yes". Now
Expand Down

0 comments on commit b11ad22

Please sign in to comment.