1// Copyright 2017-2023 The Khronos Group Inc.
2//
3// SPDX-License-Identifier: CC-BY-4.0
4
5include::{generated}/meta/{refprefix}VK_EXT_headless_surface.adoc[]
6
7=== Other Extension Metadata
8
9*Last Modified Date*::
10    2019-03-21
11*IP Status*::
12    No known IP claims.
13*Contributors*::
14  - Ray Smith, Arm
15
16=== Description
17
18The `VK_EXT_headless_surface` extension is an instance extension.
19It provides a mechanism to create slink:VkSurfaceKHR objects independently
20of any window system or display device.
21The presentation operation for a swapchain created from a headless surface
22is by default a no-op, resulting in no externally-visible result.
23
24Because there is no real presentation target, future extensions can layer on
25top of the headless surface to introduce arbitrary or customisable sets of
26restrictions or features.
27These could include features like saving to a file or restrictions to
28emulate a particular presentation target.
29
30This functionality is expected to be useful for application and driver
31development because it allows any platform to expose an arbitrary or
32customisable set of restrictions and features of a presentation engine.
33This makes it a useful portable test target for applications targeting a
34wide range of presentation engines where the actual target presentation
35engines might be scarce, unavailable or otherwise undesirable or
36inconvenient to use for general Vulkan application development.
37
38include::{generated}/interfaces/VK_EXT_headless_surface.adoc[]
39
40=== Version History
41
42  * Revision 1, 2019-03-21 (Ray Smith)
43  ** Initial draft
44