aboutsummaryrefslogtreecommitdiff
path: root/extensions
diff options
context:
space:
mode:
authorScott Graham <scottmg@chromium.org>2014-02-04 16:23:27 -0800
committerShannon Woods <shannonwoods@chromium.org>2014-03-17 22:03:39 +0000
commit3e29695d0dbe539eac0f1ccb05fe2a8d751af87d (patch)
tree1fe875f4117f4405b0dd2aa414a2b22acd799bb0 /extensions
parent626d54e8c3eb30a1aab73d3464b669b5ea3e5115 (diff)
downloadangle-3e29695d0dbe539eac0f1ccb05fe2a8d751af87d.tar.gz
Draft spec for ANGLE_platform_angle_d3d
This is the initial draft of a spec that extends EGL_EXT_platform_base to allow choosing a particular ANGLE D3D backend. Change-Id: I1d80fa8b3c4a59fe998f6d15aa0f393bdb9d26c1 Reviewed-on: https://chromium-review.googlesource.com/184975 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Scott Graham <scottmg@chromium.org> Tested-by: Scott Graham <scottmg@chromium.org> (cherry picked from commit dc18dc306d554665b5764ab3281bbb16a5a5569e) Reviewed-on: https://chromium-review.googlesource.com/190026 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Diffstat (limited to 'extensions')
-rw-r--r--extensions/ANGLE_platform_angle_d3d.txt112
1 files changed, 112 insertions, 0 deletions
diff --git a/extensions/ANGLE_platform_angle_d3d.txt b/extensions/ANGLE_platform_angle_d3d.txt
new file mode 100644
index 00000000..019150fe
--- /dev/null
+++ b/extensions/ANGLE_platform_angle_d3d.txt
@@ -0,0 +1,112 @@
+
+Name
+
+ ANGLE_platform_angle_d3d
+
+Name Strings
+
+ EGL_ANGLE_platform_angle_d3d
+
+Contributors
+
+ Scott Graham, Google
+ Shannon Woods, Google
+
+Contacts
+
+ Scott Graham, Google (scottmg 'at' google 'dot' com)
+
+Status
+
+ Draft
+
+Version
+
+ Version 1, 2014-02-04
+
+Number
+
+ EGL Extension XXX
+
+Extension Type
+
+ EGL client extension
+
+Dependencies
+
+ Requires EGL_EXT_client_extensions to query its existence without
+ a display.
+
+ Requires EGL_EXT_platform_base.
+
+ This extension is written against the wording of version 9 of the
+ EGL_EXT_platform_base specification.
+
+Overview
+
+ This extension defines how to create EGL resources from resources using
+ the functions defined by EGL_EXT_platform_base.
+
+New Types
+
+ None
+
+New Procedures and Functions
+
+ None
+
+New Tokens
+
+ Accepted as the <platform> argument of eglGetPlatformDisplayEXT:
+
+ EGL_PLATFORM_ANGLE_D3D_ANGLE 0x3201
+
+ Accepted as an attribute name in the <attrib_list> argument of
+ eglGetPlatformDisplayEXT:
+
+ EGL_PLATFORM_ANGLE_D3D_TYPE_ANGLE 0x3202
+
+ Accepted as values for the EGL_PLATFORM_ANGLE_D3D_TYPE_ANGLE attribute:
+
+ EGL_PLATFORM_ANGLE_D3D_TYPE_D3D9_ANGLE 0x3203
+ EGL_PLATFORM_ANGLE_D3D_TYPE_D3D11_ANGLE 0x3204
+ EGL_PLATFORM_ANGLE_D3D_TYPE_D3D11_WARP_ANGLE 0x3205
+
+Additions to the EGL Specification
+
+ None.
+
+New Behavior
+
+ To determine if the EGL implementation supports this extension, clients
+ should query the EGL_EXTENSIONS string of EGL_NO_DISPLAY.
+
+ To obtain an EGLDisplay backed by a ANGLE D3D display, call
+ eglGetPlatformDisplayEXT with <platform> set to
+ EGL_PLATFORM_ANGLE_D3D_ANGLE.
+
+ The <native_display> parameter is of type EGLNativeDisplayType. If
+ <native_display> is EGL_DEFAULT_DISPLAY a default display is returned.
+ Multiple calls with the same <native_display> will return the same
+ EGLDisplay handle. The value of EGL_PLATFORM_ANGLE_D3D_TYPE_ANGLE, if any,
+ is ignored if there was previously a EGLDisplay successfully created for a
+ given value of EGLNativeDisplayType.
+
+ If no <attrib_list> is specified, a D3D9 device is created. Otherwise, the
+ value of EGL_PLATFORM_ANGLE_D3D_TYPE_ANGLE should be:
+ - EGL_PLATFORM_ANGLE_D3D_TYPE_D3D9_ANGLE for D3D9 hardware,
+ - EGL_PLATFORM_ANGLE_D3D_TYPE_D3D11_ANGLE for D3D11 hardware,
+ - EGL_PLATFORM_ANGLE_D3D_TYPE_D3D11_WARP_ANGLE for D3D11 WARP.
+
+ If no display matching the requested <native_display> or of the type
+ requested by the value of EGL_PLATFORM_ANGLE_D3D_TYPE_ANGLE is available,
+ EGL_NO_DISPLAY is returned. No error condition is raised in this case.
+
+Issues
+
+ None
+
+Revision History
+
+ Version 1, 2014-02-04 (Scott Graham)
+ - Initial draft