• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright (c) 2016-2020 Nintendo
2//
3// SPDX-License-Identifier: CC-BY-4.0
4
5include::{generated}/meta/{refprefix}VK_NN_vi_surface.adoc[]
6
7=== Other Extension Metadata
8
9*Last Modified Date*::
10    2016-12-02
11*IP Status*::
12    No known IP claims.
13*Contributors*::
14  - Mathias Heyer, NVIDIA
15  - Michael Chock, NVIDIA
16  - Yasuhiro Yoshioka, Nintendo
17  - Daniel Koch, NVIDIA
18
19=== Description
20
21The `VK_NN_vi_surface` extension is an instance extension.
22It provides a mechanism to create a slink:VkSurfaceKHR object (defined by
23the `apiext:VK_KHR_surface` extension) associated with an
24code:nn::code:vi::code:Layer.
25
26include::{generated}/interfaces/VK_NN_vi_surface.adoc[]
27
28=== Issues
29
301) Does VI need a way to query for compatibility between a particular
31physical device (and queue family?) and a specific VI display?
32
33*RESOLVED*: No.
34It is currently always assumed that the device and display will always be
35compatible.
36
372) slink:VkViSurfaceCreateInfoNN::pname:pWindow is intended to store an
38code:nn::code:vi::code:NativeWindowHandle, but its declared type is a bare
39code:void* to store the window handle.
40Why the discrepancy?
41
42*RESOLVED*: It is for C compatibility.
43The definition for the VI native window handle type is defined inside the
44code:nn::code:vi C++ namespace.
45This prevents its use in C source files.
46code:nn::code:vi::code:NativeWindowHandle is always defined to be
47code:void*, so this extension uses code:void* to match.
48
49=== Version History
50
51  * Revision 1, 2016-12-2 (Michael Chock)
52  ** Initial draft.
53