Hash :
222c517f
        
        Author :
  
        
        Date :
2017-07-19T16:15:42
        
      
Control Debug layers in ANGLE_platform_angle. Debug layers seem to be a universal thing among functional back-ends. D3D, OpenGL and Vulkan all need some kind of controls for debugging, so it seems to make sense to make this control part of the base extension. Default the extension to EGL_DONT_CARE, which allows the back-end to have a lot of flexibility in terms of implementation. Also enable the extension in the D3D11 and OpenGL back-ends, and set the extension to enabled for angle_end2end_tests. Remove EGLVulkanEXTTest since it no longer tests anything not tested in the base ANGLETest class. BUG=angleproject:2086 Change-Id: I52d8170effd1846b9afbe6e4052c699fe5cb0de8 Reviewed-on: https://chromium-review.googlesource.com/578369 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
Name
    ANGLE_platform_angle_vulkan
Name Strings
    EGL_ANGLE_platform_angle_vulkan
Contributors
    Jamie Madill, Google
Contacts
    Jamie Madill, Google (jmadill 'at' google 'dot' com)
Status
    Draft
Version
    Version 2, 2017-07-19
Number
    EGL Extension XXX
Extension Type
    EGL client extension
Dependencies
    Requires ANGLE_platform_angle.
Overview
    This extension enables selection of Vulkan display types.
New Types
    None
New Procedures and Functions
    None
New Tokens
    Accepted as values for the EGL_PLATFORM_ANGLE_TYPE_ANGLE attribute:
        EGL_PLATFORM_ANGLE_TYPE_VULKAN_ANGLE               0x3450
Additions to the EGL Specification
    None.
New Behavior
    To request a display that is backed by a Vulkan driver, the value of
    EGL_PLATFORM_ANGLE_TYPE_ANGLE should be
    EGL_PLATFORM_ANGLE_TYPE_VULKAN_ANGLE.
    If EGL_PLATFORM_ANGLE_MAX_VERSION_MAJOR_ANGLE and
    EGL_PLATFORM_ANGLE_MAX_VERSION_MINOR_ANGLE are not specified, the
    implementation will decide which version of Vulkan to instantiate. If they
    are specified, it will choose a version that is lower or equal to the
    specified major and minor versions. The only current values accepted for
    major and minor version are 1 for major and 0 for minor.
Issues
    1) Should ANGLE always instantiate the highest available version of Vulkan?
       RESOLVED: It's possible that in a future implementation of Vulkan there
       may be driver issues present only on some version of Vulkan, and there's
       no explicit guarantee higher versions will be more stable. Hence, we should
       give ANGLE some flexiblity in this regard and leave this unspecified.
Revision History
    Version 1, 2016-11-17 (Jamie Madill)
      - Initial draft
    Version 2, 2017-07-19 (Jamie Madill)
      - Moved debug layer control to EGL_ANGLE_platform_angle