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