Vulkan-Docs/doc/specs/vulkan/appendices/VK_MVK_macos_surface.txt
Jon Leech fd0e4c3b67 Change log for February 27, 2017 Vulkan 1.0.42 spec update:
* Bump API patch number and header version number to 42 for this update
    (the first anniversary edition).

Github Issues:

  * Changed asciidoctor macros so cross-page links in the standalone
    reference pages function properly (public issue 462).

Internal Issues:

  * Clarified host visibility discussion for slink:VkMemoryType,
    flink:vkInvalidateMappedMemoryRanges, elink:VkAccessFlagBits, and the
    <<synchronization-framebuffer-regions,Framebuffer Region Dependencies>>
    section, removing duplicated information and adding a central definition
    in the access types section (internal issue 552).
  * Change description of
    slink:vkGetPhysicalDeviceSurfacePresentModesKHR::pname:pPresentModes to
    return an array of values, not structures (internal issue 699).

New Extensions:

  * Add a NOTE to the <<extensions,Layers & Extensions>> chapter describing
    the experimental status of `KHX` extensions.
  * Add new Khronos, Khronos Experimental, and vendor Vulkan extensions for
    release at GDC:
  ** VK_KHR_descriptor_update_template
  ** VK_KHR_push_descriptor
  ** VK_KHX_device_group
  ** VK_KHX_device_group_creation
  ** VK_KHX_external_memory
  ** VK_KHX_external_memory_capabilities
  ** VK_KHX_external_memory_fd
  ** VK_KHX_external_memory_win32
  ** VK_KHX_external_semaphore
  ** VK_KHX_external_semaphore_capabilities
  ** VK_KHX_external_semaphore_fd
  ** VK_KHX_external_semaphore_win32
  ** VK_KHX_multiview
  ** VK_KHX_win32_keyed_mutex
  ** VK_EXT_discard_rectangles
  ** VK_MVK_ios_surface
  ** VK_MVK_macos_surface
  ** VK_NVX_multiview_per_view_attributes
  ** VK_NV_clip_space_w_scaling
  ** VK_NV_geometry_shader_passthrough
  ** VK_NV_sample_mask_override_coverage
  ** VK_NV_viewport_array2
  ** VK_NV_viewport_swizzle
  * Add new GLSL vendor extensions to support new builtin variables:
  ** GL_EXT_device_group
  ** GL_EXT_multiview
2017-02-26 22:54:26 -08:00

66 lines
1.5 KiB
Plaintext

// Copyright (c) 2015-2017 The Brenwill Workshop Ltd.
// Copyright notice at https://www.khronos.org/registry/speccopyright.html
[[VK_MVK_macos_surface]]
== VK_MVK_macos_surface
*Name String*::
+VK_MVK_macos_surface+
*Extension Type*::
Instance extension
*Registered Extension Number*::
124
*Last Modified Date*::
2017-02-24
*Revision*::
2
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_surface+.
*Contributors*::
- Bill Hollings, The Brenwill Workshop Ltd.
*Contacts*::
- Bill Hollings, The Brenwill Workshop Ltd.
The +VK_MVK_macos_surface+ extension is an instance extension.
It provides a mechanism to create a slink:VkSurfaceKHR object (defined by
the +VK_KHR_surface+ extension) that refers to an code:NSView, the native
surface type of macOS, which is underpinned by a code:CAMetalLayer, to
support rendering to the surface using Apple's Metal framework.
=== New Object Types
None.
=== New Enum Constants
* Extending ename:VkStructureType:
** ename:VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK
=== New Enums
None.
=== New Structures
* slink:VkMacOSSurfaceCreateInfoMVK
=== New Functions
* flink:vkCreateMacOSSurfaceMVK
=== Issues
None.
=== Version History
* Revision 1, 2017-02-15 (Bill Hollings)
- Initial draft.
* Revision 2, 2017-02-24 (Bill Hollings)
- Minor syntax fix to emphasize firm requirement for NSView to be backed
by a CAMetalLayer.