• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright (c) 2014-2018 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
5include::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
29The `VK_KHR_android_surface` extension is an instance extension.
30It provides a mechanism to create a slink:VkSurfaceKHR object (defined by
31the `<<VK_KHR_surface>>` extension) that refers to an code:ANativeWindow,
32Android's native surface type.
33The code:ANativeWindow represents the producer endpoint of any buffer queue,
34regardless of consumer endpoint.
35Common consumer endpoints for code:ANativeWindows are the system window
36compositor, video encoders, and application-specific compositors importing
37the images through a code:SurfaceTexture.
38
39=== New Object Types
40
41None
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
50None
51
52=== New Structures
53
54  * slink:VkAndroidSurfaceCreateInfoKHR
55
56=== New Functions
57
58  * flink:vkCreateAndroidSurfaceKHR
59
60=== Issues
61
621) Does Android need a way to query for compatibility between a particular
63physical device (and queue family?) and a specific Android display?
64
65*RESOLVED*: No.
66Currently on Android, any physical device is expected to be able to present
67to the system compositor, and all queue families must support the necessary
68image 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.
90