/ appendices / VK_KHR_android_surface.txt
VK_KHR_android_surface.txt
1 // Copyright (c) 2014-2019 Khronos Group. This work is licensed under a 2 // Creative Commons Attribution 4.0 International License; see 3 // http://creativecommons.org/licenses/by/4.0/ 4 5 include::meta/VK_KHR_android_surface.txt[] 6 7 *Last Modified Date*:: 8 2016-01-14 9 *IP Status*:: 10 No known IP claims. 11 *Contributors*:: 12 - Patrick Doane, Blizzard 13 - Jason Ekstrand, Intel 14 - Ian Elliott, LunarG 15 - Courtney Goeltzenleuchter, LunarG 16 - Jesse Hall, Google 17 - James Jones, NVIDIA 18 - Antoine Labour, Google 19 - Jon Leech, Khronos 20 - David Mao, AMD 21 - Norbert Nopper, Freescale 22 - Alon Or-bach, Samsung 23 - Daniel Rakos, AMD 24 - Graham Sellers, AMD 25 - Ray Smith, ARM 26 - Jeff Vigil, Qualcomm 27 - Chia-I Wu, LunarG 28 29 The `VK_KHR_android_surface` extension is an instance extension. 30 It provides a mechanism to create a slink:VkSurfaceKHR object (defined by 31 the `<<VK_KHR_surface>>` extension) that refers to an dlink:ANativeWindow, 32 Android's native surface type. 33 The dlink:ANativeWindow represents the producer endpoint of any buffer 34 queue, regardless of consumer endpoint. 35 Common consumer endpoints for code:ANativeWindows are the system window 36 compositor, video encoders, and application-specific compositors importing 37 the images through a code:SurfaceTexture. 38 39 === New Object Types 40 41 None 42 43 === New Enum Constants 44 45 * Extending elink:VkStructureType: 46 ** ename:VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR 47 48 === New Enums 49 50 None 51 52 === New Structures 53 54 * slink:VkAndroidSurfaceCreateInfoKHR 55 56 === New Functions 57 58 * flink:vkCreateAndroidSurfaceKHR 59 60 === Issues 61 62 1) Does Android need a way to query for compatibility between a particular 63 physical device (and queue family?) and a specific Android display? 64 65 *RESOLVED*: No. 66 Currently on Android, any physical device is expected to be able to present 67 to the system compositor, and all queue families must support the necessary 68 image layout transitions and synchronization operations. 69 70 === Version History 71 72 * Revision 1, 2015-09-23 (Jesse Hall) 73 - Initial draft. 74 75 * Revision 2, 2015-10-26 (Ian Elliott) 76 - Renamed from VK_EXT_KHR_android_surface to VK_KHR_android_surface. 77 78 * Revision 3, 2015-11-03 (Daniel Rakos) 79 - Added allocation callbacks to surface creation function. 80 81 * Revision 4, 2015-11-10 (Jesse Hall) 82 - Removed VK_ERROR_INVALID_ANDROID_WINDOW_KHR. 83 84 * Revision 5, 2015-11-28 (Daniel Rakos) 85 - Updated the surface create function to take a pCreateInfo structure. 86 87 * Revision 6, 2016-01-14 (James Jones) 88 - Moved VK_ERROR_NATIVE_WINDOW_IN_USE_KHR from the VK_KHR_android_surface 89 to the VK_KHR_surface extension.