Name ANGLE_direct_composition Name Strings EGL_ANGLE_direct_composition Contributors John Bauman Contacts John Bauman (jbauman 'at' google.com) Status Draft Version Version 2, Dec 14, 2015 Number EGL Extension #?? Dependencies This extension is written against the wording of the EGL 1.5 Specification. Overview This extension allows specifying that the contents of a window surface be posted to the screen using the DirectComposition API. New Types None New Procedures and Functions None New Tokens Accepted by the parameter of eglQuerySurface and by the parameter of eglCreateWindowSurface and eglCreatePlatformWindowSurface EGL_DIRECT_COMPOSITION_ANGLE 0x33A5 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) " specifies a list of attributes for the window. The list has the same structure as described for eglChooseConfig. Attributes that can be specified in include EGL_DIRECT_COMPOSITION_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_DIRECT_COMPOSITION_ANGLE specifies whether the surface will be posted to the window using DirectComposition. The default is EGL_FALSE. If EGL_TRUE is specified, must be owned by the current process, and contents drawn by native APIs or EGLSurfaces with EGL_DIRECT_COMPOSITION_ANGLE as EGL_FALSE will appear underneath the contents of this surface." Add the following entry to Table 3.5, page 44 (Queryable surface attributes and types) Attribute Type Description ---------------------------- ------- -------------------------------------- EGL_DIRECT_COMPOSITION_ANGLE boolean Surface will be posted to the window using DirectComposition Issues 1. Should a surface attrib or config be used to specify that DirectComposition is needed. PROPOSED: A surface attrib would work and avoids creating otherwise-duplicate configs. Revision History Version 2, 2015/12/14 - Use attrib instead of config. Version 1, 2015/12/10 - Initial draft.