You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
155 lines
4.9 KiB
155 lines
4.9 KiB
Name
|
|
|
|
ANGLE_flexible_surface_compatibility
|
|
|
|
Name Strings
|
|
|
|
EGL_ANGLE_flexible_surface_compatibility
|
|
|
|
Contributors
|
|
|
|
John Bauman (jbauman 'at' google.com)
|
|
Shannon Woods (shannonwoods 'at' google.com)
|
|
|
|
Contact
|
|
|
|
John Bauman (jbauman 'at' google.com)
|
|
|
|
Status
|
|
|
|
Draft
|
|
|
|
Version
|
|
|
|
Version 3, Dec 15, 2015
|
|
|
|
Number
|
|
|
|
EGL Extension #XXX
|
|
|
|
Extension Type
|
|
|
|
EGL display extension
|
|
|
|
Dependencies
|
|
|
|
This extension is written against the language of EGL 1.5.
|
|
|
|
Overview
|
|
|
|
Some EGL implementations may allow any surface to be made current with any
|
|
context from the same display, without restrictions due to bit depth.
|
|
|
|
IP Status
|
|
|
|
No known claims.
|
|
|
|
New Types
|
|
|
|
None.
|
|
|
|
New Procedures and Functions
|
|
|
|
None.
|
|
|
|
New Tokens
|
|
|
|
Accepted by the <attribute> parameter of eglQuerySurface and by the
|
|
<attrib_list> parameter of eglCreateWindowSurface,
|
|
eglCreatePlatformWindowSurface, eglCreatePbufferSurface, and
|
|
eglCreatePbufferFromClientBuffer:
|
|
|
|
EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE 0x33A6
|
|
|
|
Changes to Chapter 2 of the EGL 1.5 Specification (EGL Operation)
|
|
|
|
Replace the first paragraph of the first bulleted list item in section
|
|
2.2, page 4
|
|
(Rendering Contexts and Drawing Surfaces)
|
|
|
|
"They support the same type of color buffer (RGB or luminance), or the
|
|
surface has the EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE
|
|
attribute set to EGL_TRUE."
|
|
|
|
Replace the first paragraph of the second bulleted list item in section
|
|
2.2, page 4
|
|
(Rendering Contexts and Drawing Surfaces)
|
|
|
|
"They have color buffers and ancillary buffers of the same depth, or the
|
|
surface has the EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE
|
|
attribute set to EGL_TRUE."
|
|
|
|
Changes to Chapter 3 of the EGL 1.5 Specification (EGL Functions and Errors)
|
|
|
|
Modify the fourth paragraph of Section 3.5.1, page 32
|
|
(Creating On-Screen rendering Surfaces)
|
|
|
|
"<attrib_list> specifies a list of attributes for the window. The list has
|
|
the same structure as described for eglChooseConfig. Attributes that can
|
|
be specified in <attrib_list> include
|
|
EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE, EGL_GL_COLORSPACE,
|
|
EGL_RENDER_BUFFER, EGL_VG_COLORSPACE, and EGL_VG_ALPHA_FORMAT."
|
|
|
|
Add the following between paragraphs 6 and 7 of Section 3.5.1, page 32
|
|
(Creating On-Screen Rendering Surfaces)
|
|
|
|
"EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE specifies whether the
|
|
surface can be made current with a context with a config of different bit
|
|
depth. Its values can be EGL_TRUE, in which case that is supported, or
|
|
EGL_FALSE, in which case that is not supported."
|
|
|
|
Modify the fourth paragraph of Section 3.5.2, page 35
|
|
(Creating Off-Screen Rendering Surfaces)
|
|
|
|
"<attrib_list> specifies a list of attributes for the pbuffer. The list
|
|
has the same structure as described for eglChooseConfig. Attributes that
|
|
can be specified in <attrib_list> include EGL_WIDTH, EGL_HEIGHT,
|
|
EGL_LARGEST_PBUFFER, EGL_TEXTURE_FORMAT, EGL_TEXTURE_TARGET,
|
|
EGL_MIPMAP_TEXTURE, EGL_GL_COLORSPACE, EGL_VG_COLORSPACE,
|
|
EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE, and
|
|
EGL_VG_ALPHA_FORMAT."
|
|
|
|
Modify paragraph twelve of Section 3.5.2, page 36
|
|
|
|
"EGL_GL_COLORSPACE, EGL_VG_COLORSPACE,
|
|
EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE, and
|
|
EGL_VG_ALPHA_FORMAT have the same meaning and default values as when used
|
|
with eglCreatePlatformWindowSurface."
|
|
|
|
Modify the fifth paragraph of Section 3.5.3, page 37
|
|
(Binding Off-Screen Rendering Surfaces To Client Buffers)
|
|
|
|
"<attrib_list> specifies a list of attributes for the pbuffer. The list
|
|
has the same structure as described for eglChooseConfig. Attributes that
|
|
can be specified in <attrib_list> include EGL_TEXTURE_FORMAT,
|
|
EGL_TEXTURE_TARGET, EGL_- MIPMAP_TEXTURE, and
|
|
EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE. The meaning of these
|
|
attributes is as described above for eglCreatePbufferSurface. The
|
|
EGL_VG_COLORSPACE and EGL_VG_ALPHA_FORMAT attributes of the surface are
|
|
determined by the VGImageFormat of buffer."
|
|
|
|
Add the following entry to Table 3.5, page 44 (Queryable surface
|
|
attributes and types)
|
|
|
|
Attribute Type Description
|
|
-------------------------------------------------- ------- ------------------------
|
|
EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE boolean Surface can be made
|
|
current with contexts
|
|
of a different bit depth
|
|
|
|
Issues
|
|
|
|
None
|
|
|
|
Revision History
|
|
|
|
Version 3, Dec 15, 2015 (John Bauman)
|
|
- Modify EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE value.
|
|
|
|
Version 2, Dec 1, 2015 (John Bauman)
|
|
- Add EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE to specify
|
|
new behavior.
|
|
|
|
Version 1, Nov 24, 2015 (John Bauman)
|
|
- Initial Draft
|