1Name 2 3 ANGLE_direct_composition 4 5Name Strings 6 7 EGL_ANGLE_direct_composition 8 9Contributors 10 11 John Bauman 12 13Contacts 14 15 John Bauman (jbauman 'at' google.com) 16 17Status 18 19 Draft 20 21Version 22 23 Version 2, Dec 14, 2015 24 25Number 26 27 EGL Extension #?? 28 29Dependencies 30 31 This extension is written against the wording of the EGL 1.5 Specification. 32 33Overview 34 35 This extension allows specifying that the contents of a window surface be 36 posted to the screen using the DirectComposition API. 37 38New Types 39 40 None 41 42New Procedures and Functions 43 44 None 45 46New Tokens 47 48 Accepted by the <attribute> parameter of eglQuerySurface and by the 49 <attrib_list> parameter of eglCreateWindowSurface and 50 eglCreatePlatformWindowSurface 51 52 EGL_DIRECT_COMPOSITION_ANGLE 0x33A5 53 54Changes to Chapter 3 of the EGL 1.5 Specification (EGL Functions and Errors) 55 56 Modify the fourth paragraph of Section 3.5.1, page 32 57 (Creating On-Screen rendering Surfaces) 58 59 "<attrib_list> specifies a list of attributes for the window. The list has 60 the same structure as described for eglChooseConfig. Attributes that can 61 be specified in <attrib_list> include EGL_DIRECT_COMPOSITION_ANGLE, 62 EGL_GL_COLORSPACE, EGL_RENDER_BUFFER, EGL_VG_COLORSPACE, and 63 EGL_VG_ALPHA_FORMAT." 64 65 Add the following between paragraphs 6 and 7 of Section 3.5.1, page 32 66 (Creating On-Screen Rendering Surfaces) 67 68 "EGL_DIRECT_COMPOSITION_ANGLE specifies whether the surface will be posted 69 to the window using DirectComposition. The default is EGL_FALSE. If 70 EGL_TRUE is specified, <native_window> must be owned by the current 71 process, and contents drawn by native APIs or EGLSurfaces with 72 EGL_DIRECT_COMPOSITION_ANGLE as EGL_FALSE will appear underneath the 73 contents of this surface." 74 75 76 Add the following entry to Table 3.5, page 44 (Queryable surface 77 attributes and types) 78 79 Attribute Type Description 80 ---------------------------- ------- -------------------------------------- 81 EGL_DIRECT_COMPOSITION_ANGLE boolean Surface will be posted to the window 82 using DirectComposition 83 84Issues 85 1. Should a surface attrib or config be used to specify that 86 DirectComposition is needed. 87 88 PROPOSED: A surface attrib would work and avoids creating 89 otherwise-duplicate configs. 90 91Revision History 92 93 Version 2, 2015/12/14 94 - Use attrib instead of config. 95 96 Version 1, 2015/12/10 97 - Initial draft. 98