Files
godot-angle-static/extensions/EGL_ANGLE_device_eagl.txt
Kenneth Russell 12ce8f687d Upstream WebKit's iOS port of ANGLE.
Added the EAGL backend authored by Dean Jackson from Apple, and the
refactoring changes needed to support it side-by-side with the macOS
backend. Ran "git cl format" against these diffs.

Defined the EGL_ANGLE_device_eagl extension and allocated an enum out
of ANGLE's reserved range.

The iOS backend is not yet included in any of the GN files.

Bug: angleproject:4263
Change-Id: I631c32930433c03bb16a242955ffedf55174bb29
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1987278
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: James Darpinian <jdarpinian@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
2020-01-10 02:00:18 +00:00

90 lines
1.8 KiB
Plaintext

Name
ANGLE_device_eagl
Name Strings
EGL_ANGLE_device_eagl
Contributors
Dean Jackson (dino 'at' apple.com)
Ken Russell (kbr 'at' google.com)
Contact
Ken Russell (kbr 'at' google.com)
Status
Draft
Version
Version 1, January 3, 2020
Number
EGL Extension #XXX
Extension Type
EGL device extension
Dependencies
This extension is written against the language of EGL 1.5 as
modified by EGL_EXT_device_query.
EGL_EXT_device_query is required.
Overview
ANGLE on iOS internally uses an OpenGL ES context allocated via EAGL.
This extension defines a mapping from an EGL device to the underlying
EAGLContext, after it's been queried from an EGL display.
IP Status
No known claims.
New Types
None.
New Procedures and Functions
None.
New Tokens
Accepted as a queried <attribute> in eglQueryDeviceAttribEXT:
EGL_EAGL_CONTEXT_ANGLE 0x348C
Add a new section 2.1.3 (EAGL Devices) after 2.1.2 (Devices)
On iOS the underlying EAGLContext can be queried from the EGL device. The
intented purpose is to allow applications to create new EAGLContexts which
share resources with this one.
Changes to section 3.2 (Devices)
Replace the paragraph immediately following the prototype for
eglQueryDeviceAttribEXT:
<attribute> must be EGL_EAGL_CONTEXT_ANGLE. On success, EGL_TRUE is
returned, and a valid EAGLContext corresponding to the EGL device is
returned in <value>. This object is compatible with OpenGL ES and EAGL API
functions. If the EGL device is not currently associated with an
EAGLContext, EGL_BAD_ATTRIBUTE is returned, and <value> is left unchanged.
Issues
None
Revision History
Version 1, January 3, 2020 (Ken Russell)
- Initial Draft