Change log for September 5, 2017 Vulkan 1.0.60 spec update:

* Bump API patch number and header version number to 60 for this update.

Github Issues:

  * Document that <<queries-timestamps, Timestamp Queries>> can only be
    meaningfully compared when they are written from the same queue (public
    issue 216).
  * Document that the `<extension>` tag `type` attribute is required for
    non-disabled extensions (derived from, but does not close public issue
    354).
  * Clean up registry schema length attribute descriptions to be consistent
    and correct (public issue 555).

Internal Issues:

  * Replace as much of the hand-written extension appendix metadata as
    possible with asciidoc includes generated from corresponding attributes
    of +vk.xml+, and enhance the style guide to match. This avoids
    inconsistencies between +vk.xml+ and the appendices, and produces a more
    uniform style (internal issue 137).
  * Remove the generated extDependency.{py,sh} files from the tree and
    create them dynamically on demand instead, reducing merge conflicts
    (internal issue 713).
  * Add a prototype tool for generating in-place difference markup for
    sections guarded by asciidoc conditionals, and new syntax for open
    blocks to support it (internal issue 833).
  * Remove unnecessary restriction of etext:*SYNC_FD_BIT_KHR external handle
    types to the same physical device in the
    slink:VkPhysicalDeviceIDPropertiesKHR,
    flink:VkImportMemoryWin32HandleInfoKHR,
    slink:VkImportFenceWin32HandleInfoKHR, slink:VkImportFenceFdInfoKHR,
    slink:VkImportSemaphoreWin32HandleInfoKHR,
    slink:VkImportSemaphoreFdInfoKHR
    <<external-memory-handle-types-compatibility, External memory handle
    types compatibility>>, <<external-semaphore-handle-types-compatibility,
    External semaphore handle types compatibility>>, and
    <<external-fence-handle-types-compatibility, External fence handle types
    compatibility>> sections (internal issue 956).

Other Issues:

  * Remove dependency of +VK_KHX_device_group+ on +VK_KHR_swapchain+ (there
    is an interaction, but not a strict dependency), and add a new
    `extension` attribute to the `<require` XML tag to allow classifying a
    subset of interfaces of an extension as requiring another extension.
    Update the registry schema and documentation accordingly.

New Extensions:

  * `VK_AMD_shader_fragment_mask` (and related `GL_AMD_shader_fragment_mask`
    GLSL extension)
  * `VK_EXT_sample_locations`
  * `VK_EXT_validation_cache`
This commit is contained in:
Jon Leech 2017-09-04 03:06:55 -07:00
parent bbb637d6db
commit df88ded281
141 changed files with 2948 additions and 1761 deletions

1
.gitignore vendored
View File

@ -40,6 +40,7 @@ __pycache__
doc/specs/vulkan/api
doc/specs/vulkan/hostsynctable
doc/specs/vulkan/validity
doc/specs/vulkan/appendices/meta
# Files generated by extraction from spec source
doc/specs/vulkan/man/PFN*.txt

View File

@ -0,0 +1,134 @@
Name
AMD_shader_fragment_mask
Name Strings
GL_AMD_shader_fragment_mask
Contact
Aaron Hagan, AMD (aaron.hagan 'at' amd.com)
Contributors
Aaron Hagan, AMD
Timothy Lottes, AMD
Daniel Rakos, AMD
Status
Pending
Version
Last Modified Date: 08/07/2017
Author Revision: 2
Number
TBD
Dependencies
This extension is written against the OpenGL Shading Language
Specification, Version 4.50.
Overview
This extension introduces new GLSL built-in functions enabling more
efficient read access to fragment mask compressed multisampled color
images. Implementations supporting this extension can avoid storing
identical sample color values inside a single pixel. This is achieved
by introducing the concept of color fragments and fragment masks.
Color fragments are storage units inside a single pixel of a multisampled
color image that can hold a unique color value. Each pixel then has a
fragment mask which contains per sample indices that map a given color
sample to a particular color fragment.
This extension enables fetching the fragment mask and individual color
fragments from a multisampled color image.
IP Status
None.
New Procedures and Functions
None.
New Tokens
None.
Modifications to the OpenGL Shading Language Specification, Version 4.50
Including the following line in a shader can be used to control the
language features described in this extension:
#extension GL_AMD_shader_fmask : <behavior>
where <behavior> is as specified in section 3.3.
New preprocessor #defines are added to the OpenGL Shading Language:
#define GL_AMD_shader_fragement_mask 1
Additions to Chapter 8 of the OpenGL Shading Language (GLSL) Specification,
version 4.30 (Built-in functions)
Add to the table of functions 8.9.2, "Texel Lookup Functions", p. 164
+-----------------------------------+-------------------------------------+
| Syntax | Description |
+-----------------------------------+-------------------------------------+
| uint fragmentMaskFetchAMD( | Returns the fragment mask from a |
| gsampler2DMS sampler, | multisampled color image. The |
| ivec2 P) | fragment mask is a single uint where|
| | each subsequent 4 bit specifies the |
| uint fragmentMaskFetchAMD( | color fragment index corresponding |
| gsampler2DMSArray sampler, | to the color sample, starting from |
| ivec3 P) | the least significant bit. |
| | |
| uint fragmentMaskFetchAMD( | |
| gsubpassInputMS subpass) | |
+-----------------------------------+-------------------------------------+
| gvec4 fragmentFetchAMD( | Fetches a color fragment with a |
| gsampler2DMS sampler, | correspoding fragment mask value. |
| ivec2 P, | |
| uint fragIndex) | |
| | |
| gvec4 fragmentFetchAMD( | |
| gsampler2DMSArray sampler, | |
| ivec3 P, | |
| uint fragIndex)| |
| | |
| gvec4 fragmentFetchAMD( | |
| gsubpassInputMS subpass, | |
| uint fragIndex) | |
+-----------------------------------+-------------------------------------+
Additions to the AGL/GLX/WGL Specifications
None.
GLX Protocol
None.
Errors
None.
Issues
Revision History
Rev. Date Author Changes
---- ---------- -------- -----------------------------------------------
2 08/07/2017 ahagan Cleanup and prepared for posting.
1 04/24/2017 ahagan Initial draft.

View File

@ -22,7 +22,7 @@
# asciidoc and generator script arguments $(EXTATTRIBS) and
# $(EXTOPTIONS).
EXTS := $(sort VK_KHR_sampler_mirror_clamp_to_edge $(EXTENSIONS))
EXTS := $(sort VK_KHR_sampler_mirror_clamp_to_edge $(EXTENSIONS) $(DIFFEXTENSIONS))
EXTATTRIBS := $(foreach ext,$(EXTS),-a $(ext))
EXTOPTIONS := $(foreach ext,$(EXTS),-extension $(ext))
@ -87,7 +87,7 @@ VERBOSE =
# $(EXTENSIONS))
# ADOCOPTS options for asciidoc->HTML5 output
NOTEOPTS = -a editing-notes -a implementation-guide
SPECREVISION = 1.0.59
SPECREVISION = 1.0.60
# Spell out RFC2822 format as not all date commands support -R
SPECDATE = $(shell echo `date -u "+%a, %d %b %Y %T %z"`)
@ -114,7 +114,7 @@ ATTRIBOPTS = -a revnumber="$(SPECREVISION)" \
-a stem=latexmath \
$(EXTATTRIBS)
ADOCEXTS = -r $(CURDIR)/config/vulkan-macros.rb
ADOCEXTS = -r $(CURDIR)/config/vulkan-macros.rb -r $(CURDIR)/config/tilde_open_block.rb
ADOCOPTS = -d book $(ATTRIBOPTS) $(NOTEOPTS) $(VERBOSE) $(ADOCEXTS)
ADOCHTMLEXTS = -r $(CURDIR)/config/katex_replace.rb
@ -143,7 +143,10 @@ SPECSRC := vkspec.txt
# should work in extension branches to pull in those files as well.
SPECFILES = $(wildcard chapters/[A-Za-z]*.txt appendices/[A-Za-z]*.txt chapters/*/[A-Za-z]*.txt appendices/*/[A-Za-z]*.txt)
GENINCLUDE = $(wildcard api/*/[A-Za-z]*.txt validity/*/[A-Za-z]*.txt hostsynctable/*.txt)
GENDEPENDS = api/timeMarker validity/timeMarker hostsynctable/timeMarker
# Shorthand for where the extension appendix generated files go
METADIR = appendices/meta
# Generated dependencies of the spec
GENDEPENDS = api/timeMarker validity/timeMarker hostsynctable/timeMarker $(METADIR)/timeMarker
# All non-format-specific dependencies
COMMONDOCS = $(SPECFILES) $(GENINCLUDE) $(GENDEPENDS)
@ -166,6 +169,12 @@ $(HTMLDIR)/vkspec.html: KATEXDIR = ../katex
$(HTMLDIR)/vkspec.html: $(SPECSRC) $(COMMONDOCS) katexinst
$(QUIET)$(ASCIIDOC) -b html5 $(ADOCOPTS) $(ADOCHTMLOPTS) -o $@ $(SPECSRC)
diff_html: $(HTMLDIR)/diff.html $(SPECSRC) $(COMMONDOCS)
$(HTMLDIR)/diff.html: KATEXDIR = ../katex
$(HTMLDIR)/diff.html: $(SPECSRC) $(COMMONDOCS) katexinst
$(QUIET)$(ASCIIDOC) -b html5 $(ADOCOPTS) $(ADOCHTMLOPTS) -a diff_extensions="$(DIFFEXTENSIONS)" -r $(CURDIR)/config/extension-highlighter.rb --trace -o $@ $(SPECSRC)
pdf: $(PDFDIR)/vkspec.pdf $(SPECSRC) $(COMMONDOCS)
$(PDFDIR)/vkspec.pdf: $(SPECSRC) $(COMMONDOCS)
@ -238,7 +247,8 @@ clean_checks:
$(QUIET)$(RMRF) $(CHECKDIR)
clean_generated:
$(QUIET)$(RMRF) api/* hostsynctable/* validity/* vkapi.py
$(QUIET)$(RMRF) api/* hostsynctable/* validity/* $(METADIR)/* vkapi.py
$(QUIET)$(RM) config/extDependency.stamp config/extDependency.pyc config/extDependency.sh config/extDependency.py
$(QUIET)$(RM) man/apispec.txt $(LOGFILE) man/[Vv][Kk]*.txt man/PFN*.txt
$(QUIET)$(RMRF) $(PDFMATHDIR)
@ -363,6 +373,7 @@ checklinks: vkapi.py
# api/timeMarker - proxy for 'apiincludes' - API include files under api/*/*.txt
# hostsynctable/timeMarker - proxy for host sync table include files under hostsynctable/*.txt
# validity/timeMarker - proxy for API validity include files under validity/*/*.txt
# appendices/meta/timeMarker - proxy for extension appendix metadata include files under appendices/*.txt
#
# $(EXTOPTIONS) specifies the extensions which are included in these
# targets, and is set above based on $(EXTENSIONS).
@ -393,17 +404,27 @@ validity/timeMarker: $(VKXML) $(GENVK)
$(QUIET)$(MKDIR) validity
$(QUIET)$(PYTHON) $(GENVK) $(GENVKOPTS) -o validity validinc
extinc: $(METADIR)/timeMarker
$(METADIR)/timeMarker: $(VKXML) $(GENVK)
$(QUIET)$(MKDIR) $(METADIR)
$(QUIET)$(PYTHON) $(GENVK) $(GENVKOPTS) -o $(METADIR) extinc
# Debugging aid - generate all files from registry XML
# This leaves out config/extDependency.sh intentionally as it only
# needs to be updated when the extension dependencies in vk.xml change.
generated: vkapi.py api/timeMarker hostsynctable/timeMarker validity/timeMarker
generated: vkapi.py api/timeMarker hostsynctable/timeMarker validity/timeMarker $(METADIR)/timeMarker
# Extension dependencies derived from vk.xml
# Both Bash and Python versions are generated
config/extDependency.sh: config/extDependency.stamp
config/extDependency.py: config/extDependency.stamp
DEPSCRIPT = $(REGISTRY)/extDependency.py
config/extDependency.sh: $(VKXML) $(DEPSCRIPT)
$(PYTHON) $(DEPSCRIPT) -registry $(VKXML) \
config/extDependency.stamp: $(VKXML) $(DEPSCRIPT)
$(QUIET)$(PYTHON) $(DEPSCRIPT) -registry $(VKXML) \
-outscript config/extDependency.sh \
-outpy config/extDependency.py
$(QUIET)touch $@

View File

@ -35,6 +35,8 @@ targets, or they can individually be found as follows:
** `pdf` - PDF in `$(OUTDIR)/pdf/vkspec.pdf`
* "`Vulkan Documentation and Extensions`" guide:
** `styleguide` - Single-file HTML5 in `$(OUTDIR)/styleguide.html`
* Diff spec:
** `diff_html` - Single-file HTML5 in `$(OUTDIR)/html/diff.html`
* Reference pages:
** `manhtml` - Single-file HTML in `$(OUTDIR)/apispec.html`
** `manpdf` - Single-file PDF in `$(OUTDIR)/apispec.html`
@ -76,15 +78,16 @@ as described below
[[building-extensions]]
=== Building With Extensions Included
We now use a "`single-branch model`", where extensions are included in the
same `1.0` branch as the core Specification, instead of the older model
where each extension lived in a separate Git branch.
Whether a given extension is generated in the output depends on asciidoc and
generator script options being specified.
Extensions are defined in the same source as the core Specification, but
are only conditionally included in the output.
Asciidoctor http://asciidoctor.org/docs/user-manual/#attributes[attributes]
of the same name as the extension are used to define whether the extension
is included or not - defining such an attribute will cause the output to
include the text for that extension.
The extensions included are those specified as a space-separated list of
extension names (e.g. `VK_KHR_surface`) in the Makefile variable
`$(EXTENSIONS)`, normally set on the make command line.
When building the specification, the extensions included are those specified
as a space-separated list of extension names (e.g. `VK_KHR_surface`) in the
Makefile variable `$(EXTENSIONS)`, normally set on the make command line.
When changing the list of extensions, it is critical to remove all generated
files using the `clean_generated` Makefile target, as the contents of
generated files depends on `$(EXTENSIONS)`.
@ -101,13 +104,6 @@ or more specified targets for specified extensions:
Khronox Experimental (`VK_KHX_*`) extensions enabled.
Usage is `makeKHRAndKHX target(s)`.
Before using these scripts, if you have changed `src/spec/vk.xml` since
checking out your repository, first
$ make config/extDependency.sh
to rebuild extension dependencies.
The Makefile variable `$(APITITLE)` defines an additional string which is
appended to the specification title.
When building with extensions enabled, this should be set to something like
@ -115,6 +111,31 @@ When building with extensions enabled, this should be set to something like
The `makeExt`, `makeKHR`, and `makeKHRAndKHX` scripts already do this.
[[building-diff]]
==== Building A Highlighted Extension Diff
The "diff_html" target in the makefile can be used to generate a version of
the specification which highlights changes made to the specification by the
inclusion of a particular set of extensions.
Extensions in the "EXTENSIONS" attribute defines the base extensions to be
enabled by the specification, and these will not be highlighted in the
output.
Extensions in the "DIFFEXTENSIONS" attribute defines the set of extensions
whose changes to the text will be highlighted when they are enabled.
Any extensions in both environment variables will be treated as if they were
only included in DIFFEXTENSIONS.
The DIFFEXTENSIONS environment variable can be used alongside the make*
scripts in this repository.
In the resulting html document, content that has been added by one of the
extensions will be highlighted with a lime background, and content that was
removed will be highlighted with a pink background.
Each section has an anchor of "#differenceN", with an arrow (=>) at the end
of each section which links to the next difference section.
The first diff section is "difference1".
[[building-test]]
=== Alternate and Test Builds

View File

@ -1,20 +1,9 @@
[[VK_AMD_draw_indirect_count]]
== VK_AMD_draw_indirect_count
include::meta/VK_AMD_draw_indirect_count.txt[]
*Name String*::
+VK_AMD_draw_indirect_count+
*Extension Type*::
Device extension
*Registered Extension Number*::
34
*Last Modified Date*::
2016-08-23
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Contributors*::
- Matthaeus G.
Chajdas, AMD
@ -22,9 +11,6 @@
- Graham Sellers, AMD
- Daniel Rakos, AMD
- Dominik Witczak, AMD
*Contacts*::
- Matthaeus G.
Chajdas, AMD (matthaeus.chajdas@amd.com)
This extension allows an application to source the number of draw calls for
indirect draw calls from a buffer.

View File

@ -1,31 +1,27 @@
[[VK_AMD_gcn_shader]]
== VK_AMD_gcn_shader
include::meta/VK_AMD_gcn_shader.txt[]
*Name String*::
+VK_AMD_gcn_shader+
*Extension Type*::
Device extension
*Registered Extension Number*::
26
*Last Modified Date*::
2016-05-30
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0.15 of the Vulkan API.
*Contributors*::
- Dominik Witczak, AMD
- Daniel Rakos, AMD
- Rex Xu, AMD
- Graham Sellers, AMD
*Contacts*::
- Dominik Witczak, AMD (dominik.witczak@amd.com)
This extension adds support for the following SPIR-V extension in Vulkan:
* +SPV_AMD_gcn_shader+
* https://www.khronos.org/registry/spir-v/extensions/AMD/SPV_AMD_gcn_shader.html[+SPV_AMD_gcn_shader+]
ifdef::editing-notes[]
[NOTE]
.editing-note
==================
Shouldn't the SPV extension be in the Interactions and External Dependencies
block?
==================
endif::editing-notes[]
=== Version History

View File

@ -1,20 +1,9 @@
[[VK_AMD_gpu_shader_half_float]]
== VK_AMD_gpu_shader_half_float
include::meta/VK_AMD_gpu_shader_half_float.txt[]
*Name String*::
+VK_AMD_gpu_shader_half_float+
*Extension Type*::
Device extension
*Registered Extension Number*::
37
*Last Modified Date*::
2016-09-21
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0.27 of the Vulkan API.
*Contributors*::
- Daniel Rakos, AMD
- Dominik Witczak, AMD
@ -22,12 +11,19 @@
- Graham Sellers, AMD
- Qun Lin, AMD
- Rex Xu, AMD
*Contacts*::
- Dominik Witczak, AMD (Dominik.Witczak@amd.com)
This extension adds support for the following SPIR-V extension in Vulkan:
* +SPV_AMD_gpu_shader_half_float+
* https://www.khronos.org/registry/spir-v/extensions/AMD/SPV_AMD_gpu_shader_half_float.html[+SPV_AMD_gpu_shader_half_float+]
ifdef::editing-notes[]
[NOTE]
.editing-note
==================
Shouldn't the SPV extension be in the Interactions and External Dependencies
block?
==================
endif::editing-notes[]
=== Version History

View File

@ -1,20 +1,13 @@
[[VK_AMD_gpu_shader_int16]]
== VK_AMD_gpu_shader_int16
include::meta/VK_AMD_gpu_shader_int16.txt[]
*Name String*::
+VK_AMD_gpu_shader_int16+
*Extension Type*::
Device extension
*Registered Extension Number*::
133
*Last Modified Date*::
06/08/2017
*Revision*:: 1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires the SPV_AMD_gpu_shader_int16 SPIR-V extension.
*Interactions and External Dependencies*::
- Requires the
https://www.khronos.org/registry/spir-v/extensions/AMD/SPV_AMD_gpu_shader_int16.html[+SPV_AMD_gpu_shader_int16+]
SPIR-V extension.
*Contributors*::
- Daniel Rakos, AMD
- Dominik Witczak, AMD
@ -23,12 +16,10 @@
- Rex Xu, AMD
- Timothy Lottes, AMD
- Zhi Cai, AMD
*Contacts*::
- Qun Lin, AMD (quentin.lin@amd.com)
This extension adds support for the following SPIR-V extension in Vulkan:
* SPV_AMD_gpu_shader_int16
* +SPV_AMD_gpu_shader_int16+
=== Version History

View File

@ -1,30 +1,15 @@
[[VK_AMD_mixed_attachment_samples]]
== VK_AMD_mixed_attachment_samples
include::meta/VK_AMD_mixed_attachment_samples.txt[]
*Name String*::
+VK_AMD_mixed_attachment_samples+
*Extension Type*::
Device extension
*Registered Extension Number*::
137
*Status*::
Complete
*Last Modified Date*::
2017-07-24
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Contributors*::
- Mais Alnasser, AMD
- Matthaeus G.
Chajdas, AMD
- Maciej Jesionowski, AMD
- Daniel Rakos, AMD
*Contacts*::
- Matthaeus G.
Chajdas (matthaeus.chajdas@amd.com)
*Overview*::
This extension enables applications to use multisampled rendering with a
depth/stencil sample count that is larger than the color sample count.

View File

@ -1,28 +1,14 @@
[[VK_AMD_negative_viewport_height]]
== VK_AMD_negative_viewport_height
include::meta/VK_AMD_negative_viewport_height.txt[]
*Name String*::
+VK_AMD_negative_viewport_height+
*Extension Type*::
Device extension
*Registered Extension Number*::
36
*Last Modified Date*::
2016-09-02
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Contributors*::
- Matthaeus G.
Chajdas, AMD
- Graham Sellers, AMD
- Baldur Karlsson
*Contacts*::
- Matthaeus G.
Chajdas, AMD (matthaeus.chajdas@amd.com)
This extension allows an application to specify a negative viewport height.
The result is that the viewport transformation will flip along the y-axis.

View File

@ -1,20 +1,9 @@
[[VK_AMD_rasterization_order]]
== VK_AMD_rasterization_order
include::meta/VK_AMD_rasterization_order.txt[]
*Name String*::
+VK_AMD_rasterization_order+
*Extension Type*::
Device extension
*Registered Extension Number*::
19
*Last Modified Date*::
2016-04-25
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0.11 of the Vulkan API.
*Contributors*::
- Matthaeus G.
Chajdas, AMD
@ -22,8 +11,6 @@
- Daniel Rakos, AMD
- Graham Sellers, AMD
- Dominik Witczak, AMD
*Contacts*::
- Daniel Rakos, AMD
This extension introduces the possibility for the application to control the
order of primitive rasterization.

View File

@ -1,20 +1,9 @@
[[VK_AMD_shader_ballot]]
== VK_AMD_shader_ballot
include::meta/VK_AMD_shader_ballot.txt[]
*Name String*::
+VK_AMD_shader_ballot+
*Extension Type*::
Device extension
*Registered Extension Number*::
38
*Last Modified Date*::
2016-09-19
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0.27 of the Vulkan API.
*Contributors*::
- Qun Lin, AMD
- Graham Sellers, AMD
@ -23,12 +12,19 @@
- Dominik Witczak, AMD
- Matthäus G.
Chajdas, AMD
*Contacts*::
- Dominik Witczak, AMD (Dominik.Witczak@amd.com)
This extension adds support for the following SPIR-V extension in Vulkan:
* +SPV_AMD_shader_ballot+
* https://www.khronos.org/registry/spir-v/extensions/AMD/SPV_AMD_shader_ballot.html[+SPV_AMD_shader_ballot+]
ifdef::editing-notes[]
[NOTE]
.editing-note
==================
Shouldn't the SPV extension be in the Interactions and External Dependencies
block?
==================
endif::editing-notes[]
=== Version History

View File

@ -1,20 +1,9 @@
[[VK_AMD_shader_explicit_vertex_parameter]]
== VK_AMD_shader_explicit_vertex_parameter
include::meta/VK_AMD_shader_explicit_vertex_parameter.txt[]
*Name String*::
+VK_AMD_shader_explicit_vertex_parameter+
*Extension Type*::
Device extension
*Registered Extension Number*::
22
*Last Modified Date*::
2016-05-10
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0.11 of the Vulkan API.
*Contributors*::
- Matthaeus G.
Chajdas, AMD
@ -22,12 +11,19 @@
- Daniel Rakos, AMD
- Graham Sellers, AMD
- Rex Xu, AMD
*Contacts*::
- Qun Lin, AMD (quentin.lin@amd.com)
This extension adds support for the following SPIR-V extension in Vulkan:
* +SPV_AMD_shader_explicit_vertex_parameter+
* https://www.khronos.org/registry/spir-v/extensions/AMD/SPV_AMD_shader_explicit_vertex_parameter.html[+SPV_AMD_shader_explicit_vertex_parameter+]
ifdef::editing-notes[]
[NOTE]
.editing-note
==================
Shouldn't the SPV extension be in the Interactions and External Dependencies
block?
==================
endif::editing-notes[]
=== Version History

View File

@ -0,0 +1,102 @@
include::meta/VK_AMD_shader_fragment_mask.txt[]
*Last Modified Date*::
2017-08-16
*IP Status*::
No known IP claims.
*Dependencies*::
- Requires the
https://www.khronos.org/registry/spir-v/extensions/AMD/SPV_AMD_fragment_mask.html[+SPV_AMD_fragment_mask+]
SPIR-V extension.
*Contributors*::
- Aaron Hagan, AMD
- Daniel Rakos, AMD
- Timothy Lottes, AMD
*Overview*::
+
--
This extension provides efficient read access to the fragment mask in
compressed multisampled color surfaces.
The fragment mask is a lookup table that associates color samples with color
fragment values.
The fragment mask can be fetched with a call to pname:fragmentMaskFetchAMD
from a shader, which returns a single uint where each subsequent 4 bit
specifies the color fragment index corresponding to the color sample,
starting from the least significant bit.
For example, when 8 color samples are used, the color fragment index for
color sample 0 will be in bits 0-3 of the fragment mask, for color sample 7
the index will be in bits 28-31.
The color fragment for a particular color sample may then be fetched with
the correspoding fragment mask value using the pname:fragmentFetchAMD shader
function.
--
=== New Object Types
None.
=== New Enum Constants
None.
=== New Enums
None.
=== New SPIR-V Capabilities
* <<spirvenv-capabilities-table-shaderfragmentmaskamd,code:ShaderFragmentMaskAMD>>
=== New Structures
None.
=== New Functions
None.
=== Examples
This example shows a shader that queries the fragment mask from a
multisampled compressed surface and uses it to query fragment values.
[source,c++]
----------------------------------------
#version 450 core
#extension GL_AMD_shader_fragment_mask: enable
layout(binding = 0) uniform sampler2DMS s2DMS;
layout(binding = 1) uniform isampler2DMSArray is2DMSArray;
layout(binding = 2, input_attachment_index = 0) uniform usubpassInputMS usubpassMS;
layout(location = 0) out vec4 fragColor;
void main()
{
vec4 fragOne = vec4(0.0);
uint fragMask = fragmentMaskFetchAMD(s2DMS, ivec2(2, 3));
uint fragIndex = (fragMask & 0xF0) >> 4;
fragOne += fragmentFetchAMD(s2DMS, ivec2(2, 3), 1);
fragMask = fragmentMaskFetchAMD(is2DMSArray, ivec3(2, 3, 1));
fragIndex = (fragMask & 0xF0) >> 4;
fragOne += fragmentFetchAMD(is2DMSArray, ivec3(2, 3, 1), fragIndex);
fragMask = fragmentMaskFetchAMD(usubpassMS);
fragIndex = (fragMask & 0xF0) >> 4;
fragOne += fragmentFetchAMD(usubpassMS, fragIndex);
fragColor = fragOne;
}
----------------------------------------
=== Version History
* Revision 1, 2017-08-16 (Aaron Hagan)
- Initial draft

View File

@ -1,20 +1,9 @@
[[VK_AMD_shader_trinary_minmax]]
== VK_AMD_shader_trinary_minmax
include::meta/VK_AMD_shader_trinary_minmax.txt[]
*Name String*::
+VK_AMD_shader_trinary_minmax+
*Extension Type*::
Device extension
*Registered Extension Number*::
21
*Last Modified Date*::
2016-05-10
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0.11 of the Vulkan API.
*Contributors*::
- Matthaeus G.
Chajdas, AMD
@ -22,12 +11,19 @@
- Daniel Rakos, AMD
- Graham Sellers, AMD
- Rex Xu, AMD
*Contacts*::
- Qun Lin, AMD (quentin.lin@amd.com)
This extension adds support for the following SPIR-V extension in Vulkan:
* +SPV_AMD_shader_trinary_minmax+
* https://www.khronos.org/registry/spir-v/extensions/AMD/SPV_AMD_shader_trinary_minmax.html[+SPV_AMD_shader_trinary_minmax+]
ifdef::editing-notes[]
[NOTE]
.editing-note
==================
Shouldn't the SPV extension be in the Interactions and External Dependencies
block?
==================
endif::editing-notes[]
=== Version History

View File

@ -1,21 +1,10 @@
[[VK_AMD_texture_gather_bias_lod]]
== VK_AMD_texture_gather_bias_lod
include::meta/VK_AMD_texture_gather_bias_lod.txt[]
*Name String*::
+VK_AMD_texture_gather_bias_lod+
*Extension Type*::
Device extension
*Registered Extension Number*::
42
*Last Modified Date*::
03/21/2017
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_get_physical_device_properties2+.
*Interactions and External Dependencies*::
- Requires the
https://www.khronos.org/registry/spir-v/extensions/AMD/SPV_AMD_texture_gather_bias_lod.html[+SPV_AMD_texture_gather_bias_lod+]
SPIR-V extension.
@ -28,14 +17,12 @@
- Qun Lin, AMD
- Rex Xu, AMD
- Timothy Lottes, AMD
*Contacts*::
- Rex Xu, AMD (Rex.Xu@amd.com)
This extension adds two related features.
Firstly, support for the following SPIR-V extension in Vulkan is added:
* SPV_AMD_texture_gather_bias_lod
* +SPV_AMD_texture_gather_bias_lod+
Secondly, the extension allows the application to query, which formats can
be used together with the new function prototypes introduced by the SPIR-V

View File

@ -1,22 +1,9 @@
[[VK_EXT_acquire_xlib_display]]
== VK_EXT_acquire_xlib_display
include::meta/VK_EXT_acquire_xlib_display.txt[]
*Name String*::
+VK_EXT_acquire_xlib_display+
*Extension Type*::
Instance extension
*Registered Extension Number*::
90
*Last Modified Date*::
2016-12-13
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0.37 of the Vulkan API.
- Requires +VK_KHR_display+.
- Requires +VK_EXT_direct_mode_display+.
*Contributors*::
- Dave Airlie, Red Hat
- Pierre Boudier, NVIDIA
@ -25,8 +12,6 @@
- Pierre-Loup Griffais, Valve
- Liam Middlebrook, NVIDIA
- Daniel Vetter, Intel
*Contacts*::
- James Jones, NVIDIA (jajones 'at' nvidia.com)
This extension allows an application to take exclusive control on a display
currently associated with an X11 screen.

View File

@ -1,25 +1,11 @@
[[VK_EXT_blend_operation_advanced]]
== VK_EXT_blend_operation_advanced
include::meta/VK_EXT_blend_operation_advanced.txt[]
*Name String*::
VK_EXT_blend_operation_advanced
*Extension Type*::
Device extension
*Registered Extension Number*::
149
*Status*::
Complete
*Last Modified Data*::
*Last Modified Date*::
2017-06-12
*Revision*::
2
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
*Contributors*::
- Jeff Bolz, NVIDIA
*Contact*::
- Jeff Bolz (jbolz 'at' nvidia.com)
This extension adds a number of "`advanced`" blending operations that can:
be used to perform new color blending operations, many of which are more

View File

@ -1,28 +1,14 @@
[[VK_EXT_debug_marker]]
== VK_EXT_debug_marker
include::meta/VK_EXT_debug_marker.txt[]
*Name String*::
+VK_EXT_debug_marker+
*Extension Type*::
Device extension
*Registered Extension Number*::
23
*Last Modified Date*::
2017-01-31
*Revision*::
4
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0.11 of the Vulkan API.
- Requires +VK_EXT_debug_report+.
*Contributors*::
- Baldur Karlsson
- Dan Ginsburg, Valve
- Jon Ashburn, LunarG
- Kyle Spagnoli, NVIDIA
*Contacts*::
- Baldur Karlsson
The +VK_EXT_debug_marker+ extension is a device extension.
It introduces concepts of object naming and tagging, for better tracking of

View File

@ -1,27 +1,14 @@
[[VK_EXT_debug_report]]
== VK_EXT_debug_report
include::meta/VK_EXT_debug_report.txt[]
*Name String*::
+VK_EXT_debug_report+
*Extension Type*::
Instance
*Registered Extension Number*::
12
*Last Modified Date*::
2017-04-27
*Revision*::
8
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0.27 of the Vulkan API.
*Contributors*::
- Courtney Goeltzenleuchter, LunarG
- Dan Ginsburg, Valve
- Jon Ashburn, LunarG
- Mark Lobodzinski, LunarG
*Contacts*::
- Courtney Goeltzenleuchter
Due to the nature of the Vulkan interface, there is very little error
information available to the developer and application.

View File

@ -1,28 +1,13 @@
[[VK_EXT_depth_range_unrestricted]]
== VK_EXT_depth_range_unrestricted
*Name String*::
VK_EXT_depth_range_unrestricted
*Extension Type*::
Device extension
*Registered Extension Number*::
14
include::meta/VK_EXT_depth_range_unrestricted.txt[]
*Status*::
Draft
*Last Modified Data*::
*Last Modified Date*::
2017-06-22
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
*Contributors*::
- Daniel Koch, NVIDIA
- Jeff Bolz, NVIDIA
*Contact*::
- Piers Daniell (pdaniell 'at' nvidia.com)
*Overview*::
+
--
This extension removes the slink:VkViewport pname:minDepth and
pname:maxDepth restrictions that the values must be between `0.0` and `1.0`,
inclusive.
@ -31,7 +16,6 @@ slink:VkPipelineDepthStencilStateCreateInfo pname:minDepthBounds and
pname:maxDepthBounds.
Finally it removes the restriction on the pname:depth value in
slink:VkClearDepthStencilValue.
--
=== New Object Types
None.

View File

@ -1,29 +1,15 @@
[[VK_EXT_direct_mode_display]]
== VK_EXT_direct_mode_display
include::meta/VK_EXT_direct_mode_display.txt[]
*Name String*::
+VK_EXT_direct_mode_display+
*Extension Type*::
Instance extension
*Registered Extension Number*::
89
*Last Modified Date*::
2016-12-13
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0.37 of the Vulkan API.
- Requires +VK_KHR_display+
*Contributors*::
- Pierre Boudier, NVIDIA
- James Jones, NVIDIA
- Damien Leone, NVIDIA
- Pierre-Loup Griffais, Valve
- Liam Middlebrook, NVIDIA
*Contacts*::
- James Jones, NVIDIA (jajones 'at' nvidia.com)
This is extension, along with related platform exentions, allows
applications to take exclusive control of displays associated with a native

View File

@ -1,28 +1,12 @@
[[VK_EXT_discard_rectangles]]
== VK_EXT_discard_rectangles
include::meta/VK_EXT_discard_rectangles.txt[]
*Name String*::
VK_EXT_discard_rectangles
*Extension Type*::
Device extension
*Registered Extension Number*::
100
*Status*::
Complete
*Last Modified Data*::
*Last Modified Date*::
2016-12-22
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
- Requires
<<VK_KHR_get_physical_device_properties2,VK_KHR_get_physical_device_properties2>>.
*Contributors*::
- Daniel Koch, NVIDIA
- Jeff Bolz, NVIDIA
*Contact*::
- Piers Daniell (pdaniell 'at' nvidia.com)
This extension provides additional orthogonally aligned "discard rectangles"
specified in framebuffer-space coordinates that restrict rasterization of

View File

@ -1,31 +1,15 @@
[[VK_EXT_display_control]]
== VK_EXT_display_control
include::meta/VK_EXT_display_control.txt[]
*Name String*::
+VK_EXT_display_control+
*Extension Type*::
Device extension
*Registered Extension Number*::
92
*Last Modified Date*::
2016-12-13
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0.37 of the Vulkan API.
- Requires +VK_KHR_display+
- Requires +VK_EXT_display_surface_counter+
- Requires +VK_KHR_swapchain+
*Contributors*::
- Pierre Boudier, NVIDIA
- James Jones, NVIDIA
- Damien Leone, NVIDIA
- Pierre-Loup Griffais, Valve
- Daniel Vetter, Intel
*Contacts*::
- James Jones, NVIDIA (jajones 'at' nvidia.com)
This extension defines a set of utility functions for use with the
+VK_KHR_display+ and +VK_KHR_display_swapchain+ extensions.

View File

@ -1,29 +1,15 @@
[[VK_EXT_display_surface_counter]]
== VK_EXT_display_surface_counter
include::meta/VK_EXT_display_surface_counter.txt[]
*Name String*::
+VK_EXT_display_surface_counter+
*Extension Type*::
Instance extension
*Registered Extension Number*::
91
*Last Modified Date*::
2016-12-13
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0.37 of the Vulkan API.
- Requires +VK_KHR_display+
*Contributors*::
- Pierre Boudier, NVIDIA
- James Jones, NVIDIA
- Damien Leone, NVIDIA
- Pierre-Loup Griffais, Valve
- Daniel Vetter, Intel
*Contacts*::
- James Jones, NVIDIA (jajones 'at' nvidia.com)
This is extension defines a vertical blanking period counter associated with
display surfaces.

View File

@ -1,25 +1,11 @@
[[VK_EXT_hdr_metadata]]
== VK_EXT_hdr_metadata
include::meta/VK_EXT_hdr_metadata.txt[]
*Name String*::
+VK_EXT_hdr_metadata+
*Extension Type*::
Device
*Registered Extension Number*::
106
*Last Modified Date*::
2017-03-04
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires +VK_KHR_surface+.
*Contributors*::
- Courtney Goeltzenleuchter, Google
*Contacts*::
- Courtney Goeltzenleuchter, Google
This extension defines two new structures and a function to assign SMPTE
(the Society of Motion Picture and Television Engineers) 2086 metadata and

View File

@ -1,36 +1,24 @@
[[VK_EXT_post_depth_coverage]]
== VK_EXT_post_depth_coverage
*Name String*::
VK_EXT_post_depth_coverage
*Extension Type*::
Device extension
*Registered Extension Number*::
156
include::meta/VK_EXT_post_depth_coverage.txt[]
*Status*::
Complete
*Last Modified Data*::
*Last Modified Date*::
2017-07-17
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
*Interactions and External Dependencies*::
- This extension requires the
https://www.khronos.org/registry/spir-v/extensions/KHR/SPV_KHR_post_depth_coverage.html[+SPV_KHR_post_depth_coverage+]
SPIR-V extension.
- This extension requires
https://www.opengl.org/registry/specs/ARB/post_depth_coverage.txt[+GL_ARB_post_depth_coverage+]
https://www.khronos.org/registry/OpenGL/extensions/ARB/ARB_post_depth_coverage.txt[+GL_ARB_post_depth_coverage+]
or
https://www.opengl.org/registry/specs/EXT/post_depth_coverage.txt[+GL_EXT_post_depth_coverage+]
https://www.khronos.org/registry/OpenGL/extensions/EXT/EXT_post_depth_coverage.txt[+GL_EXT_post_depth_coverage+]
for GLSL-based source languages.
*Contributors*::
- Jeff Bolz, NVIDIA
*Contact*::
- Daniel Koch (dkoch 'at' nvidia.com)
This extension adds support for the following SPIR-V extension in Vulkan:
* SPV_KHR_post_depth_coverage
* +SPV_KHR_post_depth_coverage+
which allows the fragment shader to control whether values in the
code:SampleMask built-in input variable reflect the coverage after the

View File

@ -0,0 +1,91 @@
include::meta/VK_EXT_sample_locations.txt[]
*Last Modified Date*::
2017-08-02
*Contributors*::
- Mais Alnasser, AMD
- Matthaeus G.
Chajdas, AMD
- Maciej Jesionowski, AMD
- Daniel Rakos, AMD
- Slawomir Grajewski, Intel
- Jeff Bolz, NVIDIA
- Bill Licea-Kane, Qualcomm
This extension allows an application to modify the locations of samples
within a pixel used in rasterization.
Additionally, it allows applications to specify different sample locations
for each pixel in a group of adjacent pixels, which can: increase
antialiasing quality (particularly if a custom resolve shader is used that
takes advantage of these different locations).
It is common for implementations to optimize the storage of depth values by
storing values that can: be used to reconstruct depth at each sample
location, rather than storing separate depth values for each sample.
For example, the depth values from a single triangle may: be represented
using plane equations.
When the depth value for a sample is needed, it is automatically evaluated
at the sample location.
Modifying the sample locations causes the reconstruction to no longer
evaluate the same depth values as when the samples were originally
generated, thus the depth aspect of a depth/stencil attachment must: be
cleared before rendering to it using different sample locations.
Some implementations may: need to evaluate depth image values while
performing image layout transitions.
To accommodate this, instances of the slink:VkSampleLocationsInfoEXT
structure can: be specified for each situation where an explicit or
automatic layout transition has to take place.
slink:VkSampleLocationsInfoEXT can: be chained from
slink:VkImageMemoryBarrier structures to provide sample locations for layout
transitions performed by flink:vkCmdWaitEvents and
flink:VkCmdPipelineBarrier calls, and
slink:VkRenderPassSampleLocationsBeginInfoEXT can: be chained from
slink:VkRenderPassBeginInfo to provide sample locations for layout
transitions performed implicitly by a render pass instance.
=== New Object Types
None.
=== New Enum Constants
* Extending elink:VkImageCreateFlagBits:
** ename:VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT
* Extending elink:VkStructureType:
** ename:VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT
** ename:VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT
** ename:VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT
** ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT
** ename:VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT
* Extending elink:VkDynamicState:
** ename:VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT
=== New Enums
None.
=== New Structures
* slink:VkSampleLocationEXT
* slink:VkSampleLocationsInfoEXT
* slink:VkAttachmentSampleLocationsEXT
* slink:VkSubpassSampleLocationsEXT
* slink:VkRenderPassSampleLocationsBeginInfoEXT
* slink:VkPipelineSampleLocationsStateCreateInfoEXT
* slink:VkPhysicalDeviceSampleLocationsPropertiesEXT
* slink:VkMultisamplePropertiesEXT
=== New Functions
* flink:vkCmdSetSampleLocationsEXT
* flink:vkGetPhysicalDeviceMultisamplePropertiesEXT
=== Issues
None.
=== Version History
* Revision 1, 2017-08-02 (Daniel Rakos)
- Internal revisions

View File

@ -1,28 +1,14 @@
[[VK_EXT_sampler_filter_minmax]]
== VK_EXT_sampler_filter_minmax
include::meta/VK_EXT_sampler_filter_minmax.txt[]
*Name String*::
+VK_EXT_sampler_filter_minmax+
*Extension Type*::
Device extension
*Registered Extension Number*::
131
*Status*::
Draft.
*Last Modified Date*::
2017-05-19
*Revision*::
2
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +<<VK_KHR_get_physical_device_properties2>>+.
*Contributors*::
- Jeff Bolz, NVIDIA
- Piers Daniell, NVIDIA
*Contacts*::
- Jeff Bolz (jbolz 'at' nvidia.com)
In unextended Vulkan, minification and magnification filters such as LINEAR
allow sampled image lookups to return a filtered texel value produced by

View File

@ -1,31 +1,20 @@
[[VK_EXT_shader_stencil_export]]
== VK_EXT_shader_stencil_export
include::meta/VK_EXT_shader_stencil_export.txt[]
*Name String*::
+VK_EXT_shader_stencil_export+
*Extension Type*::
Device extension
*Registered Extension Number*::
141
*Last Modified Date*::
07/19/2017
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires the +SPV_EXT_shader_stencil_export+ SPIR-V extension.
*Interactions and External Dependencies*::
- Requires the
https://www.khronos.org/registry/spir-v/extensions/EXT/SPV_EXT_shader_stencil_export.html[+SPV_EXT_shader_stencil_export+]
SPIR-V extension.
*Contributors*::
- Dominik Witczak, AMD
- Daniel Rakos, AMD
- Rex Xu, AMD
*Contacts*::
- Dominik Witczak, AMD (dominik.witczak@amd.com)
*Overview*::
This extension adds support for the SPIR-V extension
+SPV_EXT_shader_stencil_export+ providing a mechanism whereby a shader may
+SPV_EXT_shader_stencil_export+, providing a mechanism whereby a shader may
generate the stencil reference value per invocation.
When stencil testing is enabled, this allows the test to be performed
against the value generated in the shader.

View File

@ -1,39 +1,26 @@
[[VK_EXT_shader_subgroup_ballot]]
== VK_EXT_shader_subgroup_ballot
include::meta/VK_EXT_shader_subgroup_ballot.txt[]
*Name String*::
+VK_EXT_shader_subgroup_ballot+
*Extension Type*::
Device extension
*Registered Extension Number*::
65
*Status*::
Draft
*Last Modified Date*::
2016-11-28
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
*Interactions and External Dependencies*::
- This extension requires the
https://www.khronos.org/registry/spir-v/extensions/KHR/SPV_KHR_shader_ballot.html[+SPV_KHR_shader_ballot+]
SPIR-V extension.
- This extension requires the
https://www.opengl.org/registry/specs/ARB/shader_ballot.txt[+GL_ARB_shader_ballot+]
https://www.khronos.org/registry/OpenGL/extensions/ARB/ARB_shader_ballot.txt[+GL_ARB_shader_ballot+]
extension for GLSL source languages.
*Contributors*::
- Jeff Bolz, NVIDIA
- Neil Henning, Codeplay
- Daniel Koch, NVIDIA Corporation
*Contact*::
- Daniel Koch (dkoch 'at' nvidia.com)
This extension adds support for the following SPIR-V extension in Vulkan:
* SPV_KHR_shader_ballot
* +SPV_KHR_shader_ballot+
This extension provides the ability for a group of invocations, which
execute in parallel, to do limited forms of cross-invocation communication

View File

@ -1,38 +1,25 @@
[[VK_EXT_shader_subgroup_vote]]
== VK_EXT_shader_subgroup_vote
include::meta/VK_EXT_shader_subgroup_vote.txt[]
*Name String*::
+VK_EXT_shader_subgroup_vote+
*Extension Type*::
Device extension
*Registered Extension Number*::
66
*Status*::
Draft
*Last Modified Date*::
2016-11-28
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
*Interactions and External Dependencies*::
- This extension requires the
https://www.khronos.org/registry/spir-v/extensions/KHR/SPV_KHR_subgroup_vote.html[+SPV_KHR_subgroup_vote+]
SPIR-V extension.
- This extension requires the
https://www.opengl.org/registry/specs/ARB/shader_group_vote.txt[+GL_ARB_shader_group_vote+]
https://www.khronos.org/registry/OpenGL/extensions/ARB/ARB_shader_group_vote.txt[+GL_ARB_shader_group_vote+]
extension for GLSL source languages.
*Contributors*::
- Neil Henning, Codeplay
- Daniel Koch, NVIDIA Corporation
*Contact*::
- Daniel Koch (dkoch 'at' nvidia.com)
This extension adds support for the following SPIR-V extension in Vulkan:
* SPV_KHR_subgroup_vote
* +SPV_KHR_subgroup_vote+
This extension provides new SPIR-V instructions:

View File

@ -1,33 +1,21 @@
[[VK_EXT_shader_viewport_index_layer]]
== VK_EXT_shader_viewport_index_layer
include::meta/VK_EXT_shader_viewport_index_layer.txt[]
*Name String*::
+VK_EXT_shader_viewport_index_layer+
*Extension Type*::
Device extension
*Registered Extension Number*::
163
*Status*::
Complete
*Last Modified Data*::
*Last Modified Date*::
2017-08-08
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
*Interactions and External Dependencies*::
- This extension requires the
https://www.khronos.org/registry/spir-v/extensions/EXT/SPV_EXT_shader_viewport_index_layer.html[+SPV_EXT_shader_viewport_index_layer+]
SPIR-V extension.
- This extension requires the
https://www.opengl.org/registry/specs/ARB/shader_viewport_layer_array.txt[+GL_ARB_shader_viewport_layer_array+],
https://www.opengl.org/registry/specs/AMD/vertex_shader_layer.txt[+GL_AMD_vertex_shader_layer+],
https://www.opengl.org/registry/specs/AMD/vertex_shader_viewport_index.txt[+GL_AMD_vertex_shader_viewport_index+],
https://www.khronos.org/registry/OpenGL/extensions/ARB/ARB_shader_viewport_layer_array.txt[+GL_ARB_shader_viewport_layer_array+],
https://www.khronos.org/registry/OpenGL/extensions/AMD/AMD_vertex_shader_layer.txt[+GL_AMD_vertex_shader_layer+],
https://www.khronos.org/registry/OpenGL/extensions/AMD/AMD_vertex_shader_viewport_index.txt[+GL_AMD_vertex_shader_viewport_index+],
or
https://www.opengl.org/registry/specs/NV/viewport_array2.txt[+GL_NV_viewport_array2+]
https://www.khronos.org/registry/OpenGL/extensions/NV/NV_viewport_array2.txt[+GL_NV_viewport_array2+]
extensions for GLSL source languages.
- This extension requires the pname:geometryShader and pname:multiViewport
features.
- This extension requires the pname:multiViewport feature.
- This extension interacts with the pname:tessellationShader feature.
*Contributors*::
- Piers Daniell, NVIDIA
@ -35,11 +23,10 @@
- Jan-Harald Fredriksen, ARM
- Daniel Rakos, AMD
- Slawomir Grajeswki, Intel
*Contact*::
- Daniel Koch (dkoch 'at' nvidia.com)
This extension adds support for the code:ShaderViewportIndexLayerEXT
capability from the SPV_EXT_shader_viewport_index_layer extension in Vulkan.
capability from the +SPV_EXT_shader_viewport_index_layer+ extension in
Vulkan.
This extension allows variables decorated with the code:Layer and
code:ViewportIndex built-ins to be exported from vertex or tessellation
@ -49,9 +36,9 @@ When using GLSL source-based shading languages, the code:gl_ViewportIndex
and code:gl_Layer built-in variables map to the SPIR-V code:ViewportIndex
and code:Layer built-in decorations, respectively.
Behaviour of these variables is extended as described in the
GL_ARB_shader_viewport_layer_array (or the precursor
GL_AMD_vertex_shader_layer, AMD_vertex_shader_viewport_index, and
GL_NV_viewport_array2 extensions).
+GL_ARB_shader_viewport_layer_array+ (or the precursor
+GL_AMD_vertex_shader_layer+, +GL_AMD_vertex_shader_viewport_index+, and
+GL_NV_viewport_array2 extensions+).
ifdef::VK_NV_viewport_array2[]
[NOTE]

View File

@ -1,25 +1,11 @@
[[VK_EXT_swapchain_colorspace]]
== VK_EXT_swapchain_colorspace
include::meta/VK_EXT_swapchain_colorspace.txt[]
*Name String*::
+VK_EXT_swapchain_colorspace+
*Extension Type*::
Instance
*Registered Extension Number*::
105
*Last Modified Date*::
2017-03-15
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires +VK_KHR_surface+
*Contributors*::
- Courtney Goeltzenleuchter, Google
*Contacts*::
- Courtney Goeltzenleuchter, Google
=== New Enum Constants

View File

@ -0,0 +1,55 @@
include::meta/VK_EXT_validation_cache.txt[]
*Last Modified Date*::
2017-08-29
*IP Status*::
No known IP claims.
*Contributors*::
- Cort Stratton, Google
- Chris Forbes, Google
This extension provides a mechanism for caching the results of potentially
expensive internal validation operations across multiple runs of a Vulkan
application.
At the core is the slink:VkValidationCacheEXT object type, which is managed
similarly to the existing slink:VkPipelineCache.
The new struct slink:VkShaderModuleValidationCacheCreateInfoEXT can be
included in the pname:pNext chain at flink:vkCreateShaderModule time.
It contains a slink:VkValidationCacheEXT to use when validating the
slink:VkShaderModule.
=== New Object Types
* slink:VkValidationCacheEXT
=== New Enum Constants
* Extending elink:VkStructureType:
** ename:VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT
** ename:VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT
=== New Enums
* elink:VkValidationCacheHeaderVersionEXT
* elink:VkValidationCacheCreateFlagsEXT
=== New Structures
* slink:VkValidationCacheCreateInfoEXT
* slink:VkShaderModuleValidationCacheCreateInfoEXT
=== New Functions
* flink:vkCreateValidationCacheEXT
* flink:vkDestroyValidationCacheEXT
* flink:vkMergeValidationCachesEXT
* flink:vkGetValidationCacheDataEXT
=== Issues
None.
=== Version History
* Revision 1, 2017-08-29 (Cort Stratton)
- Initial draft

View File

@ -1,25 +1,12 @@
[[VK_EXT_validation_flags]]
== VK_EXT_validation_flags
include::meta/VK_EXT_validation_flags.txt[]
*Name String*::
+VK_EXT_validation_flags+
*Extension Type*::
Instance extension
*Registered Extension Number*::
62
*Last Modified Date*::
2016-09-06
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0.25 of the Vulkan API.
*Contributors*::
- Tobin Ehlis, Google
- Courtney Goeltzenleuchter, Google
*Contacts*::
- Tobin Ehlis, Google (tobine@google.com)
This extension provides the slink:VkValidationFlagsEXT struct that can be
included in the pname:pNext chain of the slink:VkInstanceCreateInfo

View File

@ -2,29 +2,15 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_GOOGLE_display_timing]]
== VK_GOOGLE_display_timing
include::meta/VK_GOOGLE_display_timing.txt[]
*Name String*::
+VK_GOOGLE_display_timing+
*Extension Type*::
Device extension
*Registered Extension Number*::
93
*Last Modified Date*::
2017-02-14
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires +VK_KHR_swapchain+.
*Contributors*::
- Ian Elliott, Google
- Jesse Hall, Google
*Contacts*::
- Ian Elliott, Google
This device extension allows an application that uses the +VK_KHR_swapchain+
extension to obtain information about the presentation engine's display, to

View File

@ -1,24 +1,11 @@
[[VK_IMG_filter_cubic]]
== VK_IMG_filter_cubic
include::meta/VK_IMG_filter_cubic.txt[]
*Name String*::
+VK_IMG_filter_cubic+
*Extension Type*::
Device extension
*Registered Extension Number*::
16
*Status*::
Final
*Last Modified Date*::
2016-02-23
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Contributors*::
- Tobias Hector, Imagination Technologies
*Contacts*::
- Tobias Hector (tobias.hector@imgtec.com)
+VK_IMG_filter_cubic+ adds an additional, high quality cubic filtering mode
to Vulkan, using a Catmull-Rom bicubic filter.

View File

@ -2,29 +2,15 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_16bit_storage]]
== VK_KHR_16bit_storage
include::meta/VK_KHR_16bit_storage.txt[]
*Name String*::
+VK_KHR_16bit_storage+
*Extension Type*::
Device
*Registered Extension Number*::
84
*Interactions and External Dependencies*::
- This extension requires
https://www.khronos.org/registry/spir-v/extensions/KHR/SPV_KHR_16bit_storage.html[+SPV_KHR_16bit_storage+]
*Last Modified Date*::
2017-03-23
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires
https://www.khronos.org/registry/spir-v/extensions/KHR/SPV_KHR_16bit_storage.html[SPV_KHR_16bit_storage].
- This extension requires
<<VK_KHR_get_physical_device_properties2,VK_KHR_get_physical_device_properties2>>.
- This extension requires
<<VK_KHR_storage_buffer_storage_class,VK_KHR_storage_buffer_storage_class>>.
*Contributors*::
- Alexander Galazin, ARM
- Jan-Harald Fredriksen, ARM
@ -34,8 +20,6 @@
- Daniel Koch, Nvidia
- David Neto, Google
- John Kessenich, Google
*Contacts*::
- Jan-Harald Fredriksen (jan-harald.fredriksen 'at' arm.com)
The +VK_KHR_16bit_storage+ extension allows use of 16-bit types in shader
input and output interfaces, and push constant blocks.
@ -57,6 +41,7 @@ assignment and component assignment rules.
* slink:VkPhysicalDevice16BitStorageFeaturesKHR
=== New SPIR-V Capabilities
* <<spirvenv-capabilities-table-16bitstorage,code:StorageBuffer16BitAccess>>
* <<spirvenv-capabilities-table-16bitstorage,code:UniformAndStorageBuffer16BitAccess>>
* <<spirvenv-capabilities-table-16bitstorage,code:StoragePushConstant16>>
@ -65,5 +50,6 @@ assignment and component assignment rules.
=== Issues
=== Version History
* Revision 1, 2017-03-23 (Alexander Galazin)
- Initial draft

View File

@ -2,24 +2,12 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_android_surface]]
== VK_KHR_android_surface
include::meta/VK_KHR_android_surface.txt[]
*Name String*::
+VK_KHR_android_surface+
*Extension Type*::
Instance extension
*Registered Extension Number*::
9
*Last Modified Date*::
2016-01-14
*Revision*::
6
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_surface+.
*Contributors*::
- Patrick Doane, Blizzard
- Jason Ekstrand, Intel
@ -37,8 +25,6 @@
- Ray Smith, ARM
- Jeff Vigil, Qualcomm
- Chia-I Wu, LunarG
*Contacts*::
- Jesse Hall, Google
The +VK_KHR_android_surface+ extension is an instance extension.
It provides a mechanism to create a slink:VkSurfaceKHR object (defined by

View File

@ -2,31 +2,17 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_dedicated_allocation]]
== VK_KHR_dedicated_allocation
include::meta/VK_KHR_dedicated_allocation.txt[]
*Name String*::
+VK_KHR_dedicated_allocation+
*Extension Type*::
Device extension
*Registered Extension Number*::
128
*Status*::
Draft.
*Last Modified Date*::
2017-08-07
*Revision*::
3
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_get_memory_requirements2+.
*Contributors*::
- Jeff Bolz, NVIDIA
- Jason Ekstrand, Intel
*Contacts*::
- Jason Ekstrand (jason.ekstrand 'at' intel.com)
This extension enables resources to be bound to a dedicated allocation,
rather than suballocated.

View File

@ -2,31 +2,19 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_descriptor_update_template]]
== VK_KHR_descriptor_update_template
include::meta/VK_KHR_descriptor_update_template.txt[]
*Name String*::
+VK_KHR_descriptor_update_template+
*Extension Type*::
Device extension
*Registered Extension Number*::
86
*Status*::
In Work
*Last Modified Date*::
2016-01-11
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Interactions and External Dependencies*::
- Interacts with +VK_KHR_push_descriptor+
*Contributors*::
- Jeff Bolz, NVIDIA
- Michael Worcester, Imagination Technologies
*Contact*::
- Markus Tavenrath (matavenrath 'at' nvidia.com)
Applications may wish to update a fixed set of descriptors in a large number
of descriptors sets very frequently, i.e. during initializaton phase or if

View File

@ -2,34 +2,19 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_display]]
== VK_KHR_display
include::meta/VK_KHR_display.txt[]
*Name String*::
+VK_KHR_display+
*Extension Type*::
Instance extension
*Registered Extension Number*::
3
*Status*::
Draft.
*Last Modified Date*::
2017-03-13
*Revision*::
23
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_surface+.
*Contributors*::
- James Jones, NVIDIA
- Norbert Nopper, Freescale
- Jeff Vigil, Qualcomm
- Daniel Rakos, AMD
*Contacts*::
- James Jones (jajones 'at' nvidia.com)
- Norbert Nopper (Norbert.Nopper 'at' freescale.com)
This extension provides the API to enumerate displays and available modes on
a given device.

View File

@ -2,33 +2,18 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_display_swapchain]]
== VK_KHR_display_swapchain
include::meta/VK_KHR_display_swapchain.txt[]
*Name String*::
+VK_KHR_display_swapchain+
*Extension Type*::
Device extension
*Registered Extension Number*::
4
*Status*::
Draft.
*Last Modified Date*::
2017-03-13
*Revision*::
10
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_swapchain+.
- Requires +VK_KHR_display+.
*Contributors*::
- James Jones, NVIDIA
- Jeff Vigil, Qualcomm
- Jesse Hall, Google
*Contacts*::
- James Jones (jajones 'at' nvidia.com)
This extension provides an API to create a swapchain directly on a device's
display without any underlying window system.

View File

@ -2,34 +2,20 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_external_fence]]
== VK_KHR_external_fence
include::meta/VK_KHR_external_fence.txt[]
*Name String*::
+VK_KHR_external_fence+
*Extension Type*::
Device extension
*Registered Extension Number*::
114
*Status*::
Draft
*Last Modified Date*::
2017-05-08
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Depends on +VK_KHR_external_fence_capabilities+.
*Contributors*::
- Jesse Hall, Google
- James Jones, NVIDIA
- Jeff Juliano, NVIDIA
- Cass Everitt, Oculus
- Contributors to <<VK_KHR_external_semaphore,VK_KHR_external_semaphore>>
*Contact*::
Jesse Hall (jessehall 'at' google.com)
An application using external memory may wish to synchronize access to that
memory using fences.

View File

@ -2,26 +2,14 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_external_fence_capabilities]]
== VK_KHR_external_fence_capabilities
include::meta/VK_KHR_external_fence_capabilities.txt[]
*Name String*::
+VK_KHR_external_fence_capabilities+
*Extension Type*::
Instance extension
*Registered Extension Number*::
113
*Status*::
Draft
*Last Modified Date*::
2017-05-08
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Depends on +VK_KHR_get_physical_device_properties2+.
*Contributors*::
- Jesse Hall, Google
- James Jones, NVIDIA
@ -30,9 +18,6 @@
- Contributors to
<<VK_KHR_external_semaphore_capabilities,VK_KHR_external_semaphore_capablities>>
*Contact*::
Jesse Hall (jessehall 'at' google.com)
An application may wish to reference device fences in multiple Vulkan
logical devices or instances, in multiple processes, and/or in multiple
APIs.

View File

@ -2,26 +2,14 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_external_fence_fd]]
== VK_KHR_external_fence_fd
include::meta/VK_KHR_external_fence_fd.txt[]
*Name String*::
+VK_KHR_external_fence_fd+
*Extension Type*::
Device extension
*Registered Extension Number*::
116
*Status*::
Draft
*Last Modified Date*::
2017-05-08
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Depends on +VK_KHR_external_fence_capabilities+.
*Contributors*::
- Jesse Hall, Google
- James Jones, NVIDIA
@ -29,8 +17,6 @@
- Cass Everitt, Oculus
- Contributors to
<<VK_KHR_external_semaphore_fd,VK_KHR_external_semaphore_fd>>
*Contact*::
Jesse Hall (jessehall 'at' google.com)
An application using external memory may wish to synchronize access to that
memory using fences.

View File

@ -2,26 +2,14 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_external_fence_win32]]
== VK_KHR_external_fence_win32
include::meta/VK_KHR_external_fence_win32.txt[]
*Name String*::
+VK_KHR_external_fence_win32+
*Extension Type*::
Device extension
*Registered Extension Number*::
115
*Status*::
Draft
*Last Modified Date*::
2017-05-08
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Depends on +VK_KHR_external_fence_capabilities+.
*Contributors*::
- Jesse Hall, Google
- James Jones, NVIDIA
@ -29,8 +17,6 @@
- Cass Everitt, Oculus
- Contributors to
<<VK_KHR_external_semaphore_win32,VK_KHR_external_semaphore_win32>>
*Contact*::
Jesse Hall (jessehall 'at' google.com)
An application using external memory may wish to synchronize access to that
memory using fences.

View File

@ -2,26 +2,15 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_external_memory]]
== VK_KHR_external_memory
include::meta/VK_KHR_external_memory.txt[]
*Name String*::
+VK_KHR_external_memory+
*Extension Type*::
Device extension
*Registered Extension Number*::
73
*Status*::
Draft
*Last Modified Date*::
2016-10-20
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_external_memory_capabilities+.
*Interactions and External Dependencies*::
- Interacts with +VK_KHR_dedicated_allocation+.
- Interacts with +VK_NV_dedicated_allocation+.
*Contributors*::
@ -36,8 +25,6 @@
- Carsten Rohde, NVIDIA
- Ray Smith, ARM
- Chad Versace, Google
*Contact*::
James Jones (jajones 'at' nvidia.com)
An application may wish to reference device memory in multiple Vulkan
logical devices or instances, in multiple processes, and/or in multiple

View File

@ -2,24 +2,15 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_external_memory_capabilities]]
== VK_KHR_external_memory_capabilities
include::meta/VK_KHR_external_memory_capabilities.txt[]
*Name String*::
+VK_KHR_external_memory_capabilities+
*Extension Type*::
Instance extension
*Registered Extension Number*::
72
*Status*::
Draft
*Last Modified Date*::
2016-10-17
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
*Interactions and External Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_get_physical_device_properties2+.
- Interacts with +VK_KHR_dedicated_allocation+.
@ -28,8 +19,6 @@
- Ian Elliot, Google
- Jesse Hall, Google
- James Jones, NVIDIA
*Contact*::
James Jones (jajones 'at' nvidia.com)
An application may wish to reference device memory in multiple Vulkan
logical devices or instances, in multiple processes, and/or in multiple

View File

@ -2,31 +2,17 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_external_memory_fd]]
== VK_KHR_external_memory_fd
include::meta/VK_KHR_external_memory_fd.txt[]
*Name String*::
+VK_KHR_external_memory_fd+
*Extension Type*::
Device extension
*Registered Extension Number*::
75
*Status*::
Draft
*Last Modified Date*::
2016-10-21
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_external_memory+.
*Contributors*::
- James Jones, NVIDIA
- Jeff Juliano, NVIDIA
*Contact*::
James Jones (jajones 'at' nvidia.com)
An application may wish to reference device memory in multiple Vulkan
logical devices or instances, in multiple processes, and/or in multiple

View File

@ -2,32 +2,18 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_external_memory_win32]]
== VK_KHR_external_memory_win32
include::meta/VK_KHR_external_memory_win32.txt[]
*Name String*::
+VK_KHR_external_memory_win32+
*Extension Type*::
Device extension
*Registered Extension Number*::
74
*Status*::
Draft
*Last Modified Date*::
2016-10-21
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_external_memory+.
*Contributors*::
- James Jones, NVIDIA
- Jeff Juliano, NVIDIA
- Carsten Rohde, NVIDIA
*Contact*::
James Jones (jajones 'at' nvidia.com)
An application may wish to reference device memory in multiple Vulkan
logical devices or instances, in multiple processes, and/or in multiple

View File

@ -2,26 +2,14 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_external_semaphore]]
== VK_KHR_external_semaphore
include::meta/VK_KHR_external_semaphore.txt[]
*Name String*::
+VK_KHR_external_semaphore+
*Extension Type*::
Device extension
*Registered Extension Number*::
78
*Status*::
Draft
*Last Modified Date*::
2016-10-21
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_external_semaphore_capabilities+.
*Contributors*::
- Jason Ekstrand, Intel
- Jesse Hall, Google
@ -31,8 +19,6 @@
- Matthew Netsch, Qualcomm Technologies, Inc.
- Ray Smith, ARM
- Chad Versace, Google
*Contact*::
James Jones (jajones 'at' nvidia.com)
An application using external memory may wish to synchronize access to that
memory using semaphores.

View File

@ -2,32 +2,18 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_external_semaphore_capabilities]]
== VK_KHR_external_semaphore_capabilities
include::meta/VK_KHR_external_semaphore_capabilities.txt[]
*Name String*::
+VK_KHR_external_semaphore_capabilities+
*Extension Type*::
Instance extension
*Registered Extension Number*::
77
*Status*::
Draft
*Last Modified Date*::
2016-10-20
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_get_physical_device_properties2+.
*Contributors*::
- Jesse Hall, Google
- James Jones, NVIDIA
- Jeff Juliano, NVIDIA
*Contact*::
James Jones (jajones 'at' nvidia.com)
An application may wish to reference device semaphores in multiple Vulkan
logical devices or instances, in multiple processes, and/or in multiple

View File

@ -2,33 +2,19 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_external_semaphore_fd]]
== VK_KHR_external_semaphore_fd
include::meta/VK_KHR_external_semaphore_fd.txt[]
*Name String*::
+VK_KHR_external_semaphore_fd+
*Extension Type*::
Device extension
*Registered Extension Number*::
80
*Status*::
Draft
*Last Modified Date*::
2016-10-21
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_external_semaphore_capabilities+.
*Contributors*::
- Jesse Hall, Google
- James Jones, NVIDIA
- Jeff Juliano, NVIDIA
- Carsten Rohde, NVIDIA
*Contact*::
James Jones (jajones 'at' nvidia.com)
An application using external memory may wish to synchronize access to that
memory using semaphores.

View File

@ -2,32 +2,18 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_external_semaphore_win32]]
== VK_KHR_external_semaphore_win32
include::meta/VK_KHR_external_semaphore_win32.txt[]
*Name String*::
+VK_KHR_external_semaphore_win32+
*Extension Type*::
Device extension
*Registered Extension Number*::
79
*Status*::
Draft
*Last Modified Date*::
2016-10-21
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_external_semaphore_capabilities+.
*Contributors*::
- James Jones, NVIDIA
- Jeff Juliano, NVIDIA
- Carsten Rohde, NVIDIA
*Contact*::
James Jones (jajones 'at' nvidia.com)
An application using external memory may wish to synchronize access to that
memory using semaphores.

View File

@ -2,31 +2,18 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_get_memory_requirements2]]
== VK_KHR_get_memory_requirements2
include::meta/VK_KHR_get_memory_requirements2.txt[]
*Name String*::
+VK_KHR_get_memory_requirements2+
*Extension Type*::
Device extension
*Registered Extension Number*::
147
*Status*::
Complete.
*Last Modified Date*::
2017-03-23
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Contributors*::
- Jason Ekstrand, Intel
- Jeff Bolz, NVIDIA
- Jesse Hall, Google
*Contacts*::
- Jason Ekstrand (jason.ekstrand 'at' intel.com)
This extension provides new entry points to query memory requirements of
images and buffers in a way that can be easily extended by other extensions,

View File

@ -2,30 +2,17 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_get_physical_device_properties2]]
== VK_KHR_get_physical_device_properties2
include::meta/VK_KHR_get_physical_device_properties2.txt[]
*Name String*::
+VK_KHR_get_physical_device_properties2+
*Extension Type*::
Instance extension
*Registered Extension Number*::
60
*Status*::
Complete.
*Last Modified Date*::
2016-11-02
*Revision*::
2
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Contributors*::
- Jeff Bolz, NVIDIA
- Ian Elliott, Google
*Contacts*::
- Jeff Bolz (jbolz 'at' nvidia.com)
This extension provides new entry points to query device features, device
properties, and format properties in a way that can be easily extended by

View File

@ -2,30 +2,16 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_get_surface_capabilities2]]
== VK_KHR_get_surface_capabilities2
include::meta/VK_KHR_get_surface_capabilities2.txt[]
*Name String*::
+VK_KHR_get_surface_capabilities2+
*Extension Type*::
Instance extension
*Registered Extension Number*::
120
*Last Modified Date*::
2017-02-27
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires +VK_KHR_surface+.
*Contributors*::
- Ian Elliott, Google
- James Jones, NVIDIA
- Alon Or-bach, Samsung
*Contacts*::
- James Jones, NVIDIA
This extension provides new entry points to query device surface
capabilities in a way that can be easily extended by other extensions,

View File

@ -2,24 +2,12 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_incremental_present]]
== VK_KHR_incremental_present
include::meta/VK_KHR_incremental_present.txt[]
*Name String*::
+VK_KHR_incremental_present+
*Extension Type*::
Device extension
*Registered Extension Number*::
85
*Last Modified Date*::
2016-11-02
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_swapchain+ (revision 68).
*Contributors*::
- Ian Elliott, Google
- Jesse Hall, Google
@ -30,8 +18,6 @@
- Mika Isojarvi, Google
- Jeff Juliano, NVIDIA
- Jeff Bolz, NVIDIA
*Contacts*::
- Ian Elliott, Google
This device extension extends slink:vkQueuePresentKHR, from the
+VK_KHR_swapchain+ extension, allowing an application to specify a list of

View File

@ -2,23 +2,12 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_maintenance1]]
== VK_KHR_maintenance1
include::meta/VK_KHR_maintenance1.txt[]
*Name String*::
+VK_KHR_maintenance1+
*Extension Type*::
Device extension
*Registered Extension Number*::
70
*Status*::
Draft
*Last Modified Date*::
2016-10-26
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Contributors*::
- Dan Ginsburg, Valve
- Daniel Koch, NVIDIA
@ -34,9 +23,6 @@
- Slawomir Grajewski, Intel
- Tobias Hector, Imagination Technologies
- Tom Olson, ARM
*Contacts*::
- Piers Daniell (pdaniell 'at' nvidia.com)
*Overview*::
+VK_KHR_maintenance1+ adds a collection of minor features that were
intentionally left out or overlooked from the original Vulkan 1.0 release.

View File

@ -2,24 +2,12 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_mir_surface]]
== VK_KHR_mir_surface
include::meta/VK_KHR_mir_surface.txt[]
*Name String*::
+VK_KHR_mir_surface+
*Extension Type*::
Instance extension
*Registered Extension Number*::
8
*Last Modified Date*::
2015-11-28
*Revision*::
4
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_surface+.
*Contributors*::
- Patrick Doane, Blizzard
- Jason Ekstrand, Intel
@ -37,9 +25,6 @@
- Ray Smith, ARM
- Jeff Vigil, Qualcomm
- Chia-I Wu, LunarG
*Contacts*::
- Jesse Hall, Google
- Ian Elliott, LunarG
The +VK_KHR_mir_surface+ extension is an instance extension.

View File

@ -2,31 +2,17 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_push_descriptor]]
== VK_KHR_push_descriptor
include::meta/VK_KHR_push_descriptor.txt[]
*Name String*::
+VK_KHR_push_descriptor+
*Extension Type*::
Device extension
*Registered Extension Number*::
81
*Status*::
Draft.
*Last Modified Date*::
2016-10-15
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_get_physical_device_properties2+.
*Contributors*::
- Jeff Bolz, NVIDIA
- Michael Worcester, Imagination Technologies
*Contacts*::
- Jeff Bolz (jbolz 'at' nvidia.com)
This extension allows descriptors to be written into the command buffer,
with the implementation being responsible for managing their memory.

View File

@ -2,30 +2,16 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_relaxed_block_layout]]
== VK_KHR_relaxed_block_layout
include::meta/VK_KHR_relaxed_block_layout.txt[]
*Name String*::
+VK_KHR_relaxed_block_layout+
*Extension Type*::
Device extension
*Registered Extension Number*::
145
*Status*::
Complete
*Last Modified Date*::
2017-03-26
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- Written against version 1.0 of the Vulkan API
- Requires Vulkan 1.0
*Contributors*::
- John Kessenich, Google
*Contacts*::
- John Kessenich (johnkessenich 'at' google.com)
The +VK_KHR_relaxed_block_layout+ extension allows implementations to
indicate they can support more variation in block code:Offset decorations.

View File

@ -2,27 +2,14 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_sampler_mirror_clamp_to_edge]]
== VK_KHR_sampler_mirror_clamp_to_edge
include::meta/VK_KHR_sampler_mirror_clamp_to_edge.txt[]
*Name String*::
+VK_KHR_sampler_mirror_clamp_to_edge+
*Extension Type*::
Device extension
*Registered Extension Number*::
15
*Status*::
Final
*Last Modified Date*::
2016-02-16
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Contributors*::
- Tobias Hector, Imagination Technologies
*Contacts*::
- Tobias Hector (tobias.hector@imgtec.com)
+VK_KHR_sampler_mirror_clamp_to_edge+ extends the set of sampler address
modes to include an additional mode

View File

@ -2,28 +2,21 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_shader_draw_parameters]]
== VK_KHR_shader_draw_parameters
include::meta/VK_KHR_shader_draw_parameters.txt[]
*Name String*::
+VK_KHR_shader_draw_parameters+
*Extension Type*::
Device extension
*Registered Extension Number*::
64
*Status*::
Complete
*Last Modified Data*::
*Last Modified Date*::
2016-10-05
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires Vulkan 1.0.
- Requires the +SPV_KHR_shader_draw_parameters+ SPIR-V extension.
- Requires +GL_ARB_shader_draw_parameters+ for GLSL source languages.
*Interactions and External Dependencies*::
- Requires the
https://www.khronos.org/registry/spir-v/extensions/KHR/SPV_KHR_shader_draw_parameters.html[+SPV_KHR_shader_draw_parameters+]
SPIR-V extension.
- Requires
https://www.khronos.org/registry/OpenGL/extensions/ARB/ARB_shader_draw_parameters.txt[+GL_ARB_shader_draw_parameters+]
for GLSL source languages.
*Contributors*::
- Daniel Koch, NVIDIA Corporation
- Jeff Bolz, NVIDIA
@ -31,9 +24,6 @@
- Jan-Harald Fredriksen, ARM
- John Kessenich, Google
- Stuart Smith, IMG
*Contact*::
- Daniel Koch (dkoch 'at' nvidia.com)
*Overview*::
This extension adds support for the following SPIR-V extension in Vulkan:

View File

@ -2,27 +2,12 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_shared_presentable_image]]
== VK_KHR_shared_presentable_image
include::meta/VK_KHR_shared_presentable_image.txt[]
*Name String*::
+VK_KHR_shared_presentable_image+
*Extension Type*::
Device extension
*Registered Extension Number*::
112
*Last Modified Date*::
2017-03-20
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires +VK_KHR_swapchain+.
- This extension requires +VK_KHR_surface+.
- This extension requires +VK_KHR_get_physical_device_properties2+.
- This extension requires +VK_KHR_get_surface_capabilities2+.
*Contributors*::
- Alon Or-bach, Samsung Electronics
- Ian Elliott, Google
@ -37,8 +22,6 @@
- Michael Worcester, Imagination Technologies
- Cass Everitt, Oculus
- Johannes Van Waveren, Oculus
*Contacts*::
- Alon Or-bach, Samsung Electronics
This extension extends +VK_KHR_swapchain+ to enable creation of a shared
presentable image.

View File

@ -2,39 +2,25 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_storage_buffer_storage_class]]
== VK_KHR_storage_buffer_storage_class
include::meta/VK_KHR_storage_buffer_storage_class.txt[]
*Name String*::
+VK_KHR_storage_buffer_storage_class+
*Extension Type*::
Device extension
*Registered Extension Number*::
132
*Status*::
Draft
*Last Modified Date*::
2017-03-23
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
*Interactions and External Dependencies*::
- This extension requires the
https://gitlab.khronos.org/spirv/spirv-extensions/blob/master/SPV_KHR_storage_buffer_storage_class.asciidoc[SPV_KHR_storage_buffer_storage_class]
https://www.khronos.org/registry/spir-v/extensions/KHR/SPV_KHR_storage_buffer_storage_class.html[+SPV_KHR_storage_buffer_storage_class+]
SPIR-V extension.
*Contributors*::
- Alexander Galazin, ARM
- David Neto, Google
*Contact*::
- Jan-Harald Fredriksen (jan-harald.fredriksen 'at' arm.com)
This extension adds support for the following SPIR-V extension in Vulkan:
* SPV_KHR_storage_buffer_storage_class
* +SPV_KHR_storage_buffer_storage_class+
This extension provides a new SPIR-V code:StorageBuffer storage class.
A code:Block-decorated object in this class is equivalent to a

View File

@ -2,23 +2,12 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_surface]]
== VK_KHR_surface
include::meta/VK_KHR_surface.txt[]
*Name String*::
+VK_KHR_surface+
*Extension Type*::
Instance extension
*Registered Extension Number*::
1
*Last Modified Date*::
2016-08-25
*Revision*::
25
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Contributors*::
- Patrick Doane, Blizzard
- Ian Elliott, LunarG
@ -32,9 +21,6 @@
- Jeff Vigil, Qualcomm
- Chia-I Wu, LunarG
- Jason Ekstrand, Intel
*Contacts*::
- James Jones, NVIDIA
- Ian Elliott, LunarG
The +VK_KHR_surface+ extension is an instance extension.
It introduces slink:VkSurfaceKHR objects, which abstract native platform

View File

@ -2,24 +2,12 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_swapchain]]
== VK_KHR_swapchain
include::meta/VK_KHR_swapchain.txt[]
*Name String*::
+VK_KHR_swapchain+
*Extension Type*::
Device extension
*Registered Extension Number*::
2
*Last Modified Date*::
2016-05-04
*Revision*::
68
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires +VK_KHR_surface+.
*Contributors*::
- Patrick Doane, Blizzard
- Ian Elliott, LunarG
@ -37,9 +25,6 @@
- Matthaeus G.
Chajdas, AMD
- Ray Smith, ARM
*Contacts*::
- James Jones, NVIDIA
- Ian Elliott, LunarG
The +VK_KHR_swapchain+ extension is the device-level companion to the
+VK_KHR_surface+ extension.

View File

@ -2,32 +2,15 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_variable_pointers]]
== VK_KHR_variable_pointers
include::meta/VK_KHR_variable_pointers.txt[]
*Name String*::
VK_KHR_variable_pointers
*Extension Type*::
Device extension
*Registered Extension Number*::
121
*Status*::
Draft
*Last Modified Date*::
2017-03-14
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- Written against version 1.0 of the Vulkan API
- Requires Vulkan 1.0
- Requires the
<<VK_KHR_get_physical_device_properties2,VK_KHR_get_physical_device_properties2>>
extension
- Requires the
<<VK_KHR_storage_buffer_storage_class,VK_KHR_storage_buffer_storage_class>>
extension
*Interactions and External Dependencies*::
- Requires the
https://www.khronos.org/registry/spir-v/extensions/KHR/SPV_KHR_variable_pointers.html[+SPV_KHR_variable_pointers+]
SPIR-V extension.
@ -41,9 +24,6 @@
- Stephen Clarke, Imagination Technologies
- Jason Ekstrand, Intel
- Jesse Hall, Google
*Contacts*::
- Jesse Hall (jessehall 'at' google.com)
- John Kessenich (johnkessenich 'at' google.com)
The +VK_KHR_variable_pointers+ extension allows implementations to indicate
their level of support for the +SPV_KHR_variable_pointers+ SPIR-V extension.
@ -57,10 +37,12 @@ implementations of this extension.
The second, +VariablePointers+, is optional.
=== New Enum Constants
* Extending elink:VkStructureType:
** ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR
=== New Structures
* slink:VkPhysicalDeviceVariablePointerFeaturesKHR
=== New SPIR-V Capabilities
@ -92,5 +74,6 @@ supported in all stages.
extensions.
=== Version History
* Revision 1, 2017-03-14 (Jesse Hall and John Kessenich)
- Internal revisions

View File

@ -2,24 +2,12 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_wayland_surface]]
== VK_KHR_wayland_surface
include::meta/VK_KHR_wayland_surface.txt[]
*Name String*::
+VK_KHR_wayland_surface+
*Extension Type*::
Instance extension
*Registered Extension Number*::
7
*Last Modified Date*::
2015-11-28
*Revision*::
6
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires +VK_KHR_surface+.
*Contributors*::
- Patrick Doane, Blizzard
- Jason Ekstrand, Intel
@ -37,10 +25,6 @@
- Ray Smith, ARM
- Jeff Vigil, Qualcomm
- Chia-I Wu, LunarG
*Contacts*::
- Jesse Hall, Google
- Ian Elliott, LunarG
The +VK_KHR_wayland_surface+ extension is an instance extension.
It provides a mechanism to create a slink:VkSurfaceKHR object (defined by

View File

@ -2,32 +2,18 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_win32_keyed_mutex]]
== VK_KHR_win32_keyed_mutex
include::meta/VK_KHR_win32_keyed_mutex.txt[]
*Name String*::
+VK_KHR_win32_keyed_mutex+
*Extension Type*::
Device extension
*Registered Extension Number*::
76
*Status*::
Draft
*Last Modified Date*::
2016-10-21
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_external_memory+.
*Contributors*::
- James Jones, NVIDIA
- Jeff Juliano, NVIDIA
- Carsten Rohde, NVIDIA
*Contact*::
Carsten Rohde (crohde 'at' nvidia.com)
Applications that wish to import Direct3D 11 memory objects into the Vulkan
API may wish to use the native keyed mutex mechanism to synchronize access

View File

@ -2,24 +2,12 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_win32_surface]]
== VK_KHR_win32_surface
include::meta/VK_KHR_win32_surface.txt[]
*Name String*::
+VK_KHR_win32_surface+
*Extension Type*::
Instance extension
*Registered Extension Number*::
10
*Last Modified Date*::
2017-04-24
*Revision*::
6
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires +VK_KHR_surface+.
*Contributors*::
- Patrick Doane, Blizzard
- Jason Ekstrand, Intel
@ -37,10 +25,6 @@
- Ray Smith, ARM
- Jeff Vigil, Qualcomm
- Chia-I Wu, LunarG
*Contacts*::
- Jesse Hall, Google
- Ian Elliott, LunarG
The +VK_KHR_win32_surface+ extension is an instance extension.
It provides a mechanism to create a slink:VkSurfaceKHR object (defined by

View File

@ -2,24 +2,12 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_xcb_surface]]
== VK_KHR_xcb_surface
include::meta/VK_KHR_xcb_surface.txt[]
*Name String*::
+VK_KHR_xcb_surface+
*Extension Type*::
Instance extension
*Registered Extension Number*::
6
*Last Modified Date*::
2015-11-28
*Revision*::
6
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_surface+.
*Contributors*::
- Patrick Doane, Blizzard
- Jason Ekstrand, Intel
@ -37,10 +25,6 @@
- Ray Smith, ARM
- Jeff Vigil, Qualcomm
- Chia-I Wu, LunarG
*Contacts*::
- Jesse Hall, Google
- Ian Elliott, LunarG
The +VK_KHR_xcb_surface+ extension is an instance extension.
It provides a mechanism to create a slink:VkSurfaceKHR object (defined by

View File

@ -2,24 +2,12 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHR_xlib_surface]]
== VK_KHR_xlib_surface
include::meta/VK_KHR_xlib_surface.txt[]
*Name String*::
+VK_KHR_xlib_surface+
*Extension Type*::
Instance extension
*Registered Extension Number*::
5
*Last Modified Date*::
2015-11-28
*Revision*::
6
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_surface+.
*Contributors*::
- Patrick Doane, Blizzard
- Jason Ekstrand, Intel
@ -37,10 +25,6 @@
- Ray Smith, ARM
- Jeff Vigil, Qualcomm
- Chia-I Wu, LunarG
*Contacts*::
- Jesse Hall, Google
- Ian Elliott, LunarG
The +VK_KHR_xlib_surface+ extension is an instance extension.
It provides a mechanism to create a slink:VkSurfaceKHR object (defined by

View File

@ -2,31 +2,16 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHX_device_group]]
== VK_KHX_device_group
include::meta/VK_KHX_device_group.txt[]
*Name String*::
+VK_KHX_device_group+
*Extension Type*::
Device extension
*Registered Extension Number*::
61
*Status*::
Draft.
*Last Modified Date*::
2016-10-19
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_swapchain+ revision 68.
- Requires +VK_KHX_device_group_creation+ revision 1.
*Contributors*::
- Jeff Bolz, NVIDIA
*Contacts*::
- Jeff Bolz (jbolz 'at' nvidia.com)
This extension provides functionality to use a logical device that consists
of multiple physical devices, as created with the

View File

@ -2,29 +2,16 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHX_device_group_creation]]
== VK_KHX_device_group_creation
include::meta/VK_KHX_device_group_creation.txt[]
*Name String*::
+VK_KHX_device_group_creation+
*Extension Type*::
Instance extension
*Registered Extension Number*::
71
*Status*::
Draft.
*Last Modified Date*::
2016-10-19
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Contributors*::
- Jeff Bolz, NVIDIA
*Contacts*::
- Jeff Bolz (jbolz 'at' nvidia.com)
This extension provides instance-level commands to enumerate groups of
physical devices, and to create a logical device from a subset of one of

View File

@ -2,30 +2,16 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_KHX_multiview]]
== VK_KHX_multiview
include::meta/VK_KHX_multiview.txt[]
*Name String*::
+VK_KHX_multiview+
*Extension Type*::
Device extension
*Registered Extension Number*::
54
*Status*::
Draft.
*Last Modified Date*::
2016-10-28
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_get_physical_device_properties2+.
*Contributors*::
- Jeff Bolz, NVIDIA
*Contacts*::
- Jeff Bolz (jbolz 'at' nvidia.com)
This extension has the same goal as the OpenGL ES +GL_OVR_multiview+
extension - it enables rendering to multiple "`views`" by recording a single

View File

@ -2,28 +2,14 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_MVK_ios_surface]]
== VK_MVK_ios_surface
include::meta/VK_MVK_ios_surface.txt[]
*Name String*::
+VK_MVK_ios_surface+
*Extension Type*::
Instance extension
*Registered Extension Number*::
123
*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_ios_surface+ extension is an instance extension.
It provides a mechanism to create a slink:VkSurfaceKHR object (defined by

View File

@ -2,28 +2,14 @@
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
[[VK_MVK_macos_surface]]
== VK_MVK_macos_surface
include::meta/VK_MVK_macos_surface.txt[]
*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

View File

@ -1,28 +1,14 @@
[[VK_NN_vi_surface]]
== VK_NN_vi_surface
include::meta/VK_NN_vi_surface.txt[]
*Name String*::
+VK_NN_vi_surface+
*Extension Type*::
Instance extension
*Registered Extension Number*::
63
*Last Modified Date*::
2016-12-2
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_KHR_surface+.
*Contributors*::
- Mathias Heyer, NVIDIA
- Michael Chock, NVIDIA
- Yasuhiro Yoshioka, Nintendo
- Daniel Koch, NVIDIA
*Contacts*::
- Mathias Heyer, NVIDIA
The +VK_NN_vi_surface+ extension is an instance extension.
It provides a mechanism to create a slink:VkSurfaceKHR object (defined by

View File

@ -1,18 +1,7 @@
[[VK_NVX_device_generated_commands]]
== VK_NVX_device_generated_commands
include::meta/VK_NVX_device_generated_commands.txt[]
*Name String*::
+VK_NVX_device_generated_commands+
*Extension Type*::
Device extension
*Registered Extension Number*::
87
*Last Modified Date*::
2017-07-25
*Revision*::
3
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Contributors*::
- Pierre Boudier, NVIDIA
- Christoph Kubisch, NVIDIA
@ -22,9 +11,6 @@
- Detlef Roettger, NVIDIA
- Daniel Koch, NVIDIA
- Chris Hebert, NVIDIA
*Contacts*::
- Pierre Boudier, NVIDIA (pboudier@nvidia.com)
- Christoph Kubisch, NVIDIA (ckubisch@nvidia.com)
This extension allows the device to generate a number of critical commands
for command buffers.

View File

@ -1,37 +1,22 @@
[[VK_NVX_multiview_per_view_attributes]]
== VK_NVX_multiview_per_view_attributes
include::meta/VK_NVX_multiview_per_view_attributes.txt[]
*Name String*::
+VK_NVX_multiview_per_view_attributes+
*Extension Type*::
Device extension
*Registered Extension Number*::
98
*Status*::
Draft.
*Last Modified Date*::
2017-01-13
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Interactions and External Dependencies*::
- This extension requires the
https://www.khronos.org/registry/spir-v/extensions/NV/SPV_NVX_multiview_per_view_attributes.html[+SPV_NVX_multiview_per_view_attributes+]
SPIR-V extension.
- This extension requires the +GL_NVX_multiview_per_view_attributes+
extension for GLSL source languages.
- Requires
<<VK_KHR_get_physical_device_properties2,VK_KHR_get_physical_device_properties2>>
and <<VK_KHX_multiview,VK_KHX_multiview>>.
- This extension interacts with
<<VK_NV_viewport_array2,VK_NV_viewport_array2>>.
*Contributors*::
- Jeff Bolz, NVIDIA
- Daniel Koch, NVIDIA
*Contacts*::
- Jeff Bolz (jbolz 'at' nvidia.com)
This extension adds a new way to write shaders to be used with multiview
subpasses, where the attributes for all views are written out by a single

View File

@ -1,25 +1,12 @@
[[VK_NV_clip_space_w_scaling]]
== VK_NV_clip_space_w_scaling
include::meta/VK_NV_clip_space_w_scaling.txt[]
*Name String*::
+VK_NV_clip_space_w_scaling+
*Extension Type*::
Device extension
*Registered Extension Number*::
88
*Status*::
Complete.
*Last Modified Date*::
2017-02-15
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Contributors*::
- Eric Werness, NVIDIA
- Kedarnath Thangudu, NVIDIA
*Contacts*::
- Eric Werness (ewerness 'at' nvidia.com)
Virtual Reality (VR) applications often involve a post-processing step to
apply a "barrel" distortion to the rendered image to correct the

View File

@ -1,26 +1,13 @@
[[VK_NV_dedicated_allocation]]
== VK_NV_dedicated_allocation
include::meta/VK_NV_dedicated_allocation.txt[]
*Name String*::
+VK_NV_dedicated_allocation+
*Extension Type*::
Device extension
*Registered Extension Number*::
27
*Status*::
Draft.
*Last Modified Date*::
2016-05-31
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Contributors*::
- Jeff Bolz, NVIDIA
*Contacts*::
- Jeff Bolz (jbolz 'at' nvidia.com)
This extension allows device memory to be allocated for a particular buffer
or image resource, which on some devices can significantly improve the

View File

@ -1,28 +1,14 @@
[[VK_NV_external_memory]]
== VK_NV_external_memory
include::meta/VK_NV_external_memory.txt[]
*Name String*::
+VK_NV_external_memory+
*Extension Type*::
Device extension
*Registered Extension Number*::
57
*Status*::
Complete
*Last Modified Date*::
2016-08-19
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_NV_external_memory_capabilities+.
*Contributors*::
- James Jones, NVIDIA
- Carsten Rohde, NVIDIA
*Contact*::
- James Jones (jajones 'at' nvidia.com)
Applications may wish to export memory to other Vulkan instances or other
APIs, or import memory from other Vulkan instances or other APIs to enable

View File

@ -1,28 +1,16 @@
[[VK_NV_external_memory_capabilities]]
== VK_NV_external_memory_capabilities
include::meta/VK_NV_external_memory_capabilities.txt[]
*Name String*::
+VK_NV_external_memory_capabilities+
*Extension Type*::
Instance extension
*Registered Extension Number*::
56
*Status*::
Complete
*Last Modified Date*::
2016-08-19
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Interactions and External Dependencies*::
- Interacts with +VK_KHR_dedicated_allocation+.
- Interacts with +VK_NV_dedicated_allocation+.
*Contributors*::
- James Jones, NVIDIA
*Contact*::
James Jones (jajones 'at' nvidia.com)
Applications may wish to import memory from the Direct 3D API, or export
memory to other Vulkan instances.

View File

@ -1,29 +1,14 @@
[[VK_NV_external_memory_win32]]
== VK_NV_external_memory_win32
include::meta/VK_NV_external_memory_win32.txt[]
*Name String*::
+VK_NV_external_memory_win32+
*Extension Type*::
Device extension
*Registered Extension Number*::
58
*Status*::
Complete
*Last Modified Date*::
2016-08-19
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_NV_external_memory_capabilities+.
- Requires +VK_NV_external_memory+.
*Contributors*::
- James Jones, NVIDIA
- Carsten Rohde, NVIDIA
*Contact*::
- James Jones (jajones 'at' nvidia.com)
Applications may wish to export memory to other Vulkan instances or other
APIs, or import memory from other Vulkan instances or other APIs to enable

View File

@ -1,25 +1,11 @@
[[VK_NV_fill_rectangle]]
== VK_NV_fill_rectangle
include::meta/VK_NV_fill_rectangle.txt[]
*Name String*::
+VK_NV_fill_rectangle+
*Extension Type*::
Device extension
*Registered Extension Number*::
154
*Status*::
Complete
*Last Modified Data*::
*Last Modified Date*::
2017-05-22
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
*Contributors*::
- Jeff Bolz, NVIDIA
*Contact*::
- Jeff Bolz (jbolz 'at' nvidia.com)
This extension adds a new elink:VkPolygonMode enum where a triangle is
rasterized by computing and filling its axis-aligned screen-space bounding

View File

@ -1,25 +1,11 @@
[[VK_NV_fragment_coverage_to_color]]
== VK_NV_fragment_coverage_to_color
include::meta/VK_NV_fragment_coverage_to_color.txt[]
*Name String*::
+VK_NV_fragment_coverage_to_color+
*Extension Type*::
Device extension
*Registered Extension Number*::
150
*Status*::
Complete
*Last Modified Data*::
*Last Modified Date*::
2017-05-21
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
*Contributors*::
- Jeff Bolz, NVIDIA
*Contact*::
- Jeff Bolz (jbolz 'at' nvidia.com)
This extension allows the fragment coverage value, represented as an integer
bitmask, to be substituted for a color output being written to a

View File

@ -1,24 +1,11 @@
[[VK_NV_framebuffer_mixed_samples]]
== VK_NV_framebuffer_mixed_samples
include::meta/VK_NV_framebuffer_mixed_samples.txt[]
*Name String*::
VK_NV_framebuffer_mixed_samples
*Extension Type*::
Device extension
*Registered Extension Number*::
153
*Status*::
Complete
*Last Modified Data*::
*Last Modified Date*::
2017-06-04
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
*Contributors*::
*Contact*::
- Jeff Bolz (jbolz 'at' nvidia.com)
- Jeff Bolz, NVIDIA
This extension allows multisample rendering with a raster and depth/stencil
sample count that is larger than the color sample count.

View File

@ -1,36 +1,24 @@
[[VK_NV_geometry_shader_passthrough]]
== VK_NV_geometry_shader_passthrough
*Name String*::
VK_NV_geometry_shader_passthrough
*Extension Type*::
Device extension
*Registered Extension Number*::
96
include::meta/VK_NV_geometry_shader_passthrough.txt[]
*Status*::
Complete
*Last Modified Data*::
*Last Modified Date*::
2017-02-15
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
*Interactions and External Dependencies*::
- This extension requires the
https://www.khronos.org/registry/spir-v/extensions/NV/SPV_NV_geometry_shader_passthrough.html[+SPV_NV_geometry_shader_passthrough+]
SPIR-V extension.
- This extension requires the
https://www.opengl.org/registry/specs/NV/geometry_shader_passthrough.txt[+GL_NV_geometry_shader_passthrough+]
https://www.khronos.org/registry/OpenGL/extensions/NV/NV_geometry_shader_passthrough.txt[+GL_NV_geometry_shader_passthrough+]
extension for GLSL source languages.
- This extension requires the pname:geometryShader feature.
*Contributors*::
- Piers Daniell, NVIDIA
- Jeff Bolz, NVIDIA
*Contact*::
- Daniel Koch (dkoch 'at' nvidia.com)
This extension adds support for the following SPIR-V extension in Vulkan:
* SPV_NV_geometry_shader_passthrough
* +SPV_NV_geometry_shader_passthrough+
Geometry shaders provide the ability for applications to process each
primitive sent through the graphics pipeline using a programmable shader.
@ -48,11 +36,11 @@ Adding this to a geometry shader input variable indicates that the values of
this input are copied to the corresponding vertex of the output primitive.
When using GLSL source-based shading languages, the code:passthrough layout
qualifier from GL_NV_geometry_shader_passthrough maps to the
qualifier from +GL_NV_geometry_shader_passthrough+ maps to the
code:PassthroughNV decoration.
To use the code:passthrough layout, in GLSL the
GL_NV_geometry_shader_passthrough extension must be enabled.
Behaviour is described in the GL_NV_geometry_shader_passthrough extension
+GL_NV_geometry_shader_passthrough+ extension must be enabled.
Behaviour is described in the +GL_NV_geometry_shader_passthrough+ extension
specification.
=== New Object Types

View File

@ -1,26 +1,13 @@
[[VK_NV_glsl_shader]]
== VK_NV_glsl_shader
include::meta/VK_NV_glsl_shader.txt[]
*Name String*::
+VK_NV_glsl_shader+
*Extension Type*::
Device extension
*Registered Extension Number*::
13
*Status*::
Draft.
*Last Modified Date*::
2016-02-14
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
*Contributors*::
- Piers Daniell, NVIDIA
*Contacts*::
- Piers Daniell (pdaniell 'at' nvidia.com)
This extension allows GLSL shaders written to the +GL_KHR_vulkan_glsl+
extension specification to be used instead of SPIR-V.

View File

@ -1,38 +1,25 @@
[[VK_NV_sample_mask_override_coverage]]
== VK_NV_sample_mask_override_coverage
include::meta/VK_NV_sample_mask_override_coverage.txt[]
*Name String*::
+VK_NV_sample_mask_override_coverage+
*Extension Type*::
Device extension
*Registered Extension Number*::
95
*Status*::
Complete
*Last Modified Data*::
*Last Modified Date*::
2016-12-08
*Revision*::
1
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
*Interactions and External Dependencies*::
- This extension requires the
https://www.khronos.org/registry/spir-v/extensions/NV/SPV_NV_sample_mask_override_coverage.html[+SPV_NV_sample_mask_override_coverage+]
SPIR-V extension.
- This extension requires the
https://www.opengl.org/registry/specs/NV/sample_mask_override_coverage.txt[+GL_NV_sample_mask_override_coverage+]
https://www.khronos.org/registry/OpenGL/extensions/NV/NV_sample_mask_override_coverage.txt[+GL_NV_sample_mask_override_coverage+]
extension for GLSL source languages.
*Contributors*::
- Daniel Koch, NVIDIA
- Jeff Bolz, NVIDIA
*Contact*::
- Piers Daniell (pdaniell 'at' nvidia.com)
This extension adds support for the following SPIR-V extension in Vulkan:
* SPV_NV_sample_mask_override_coverage
* +SPV_NV_sample_mask_override_coverage+
The extension provides access to the code:OverrideCoverageNV decoration
under the code:SampleMaskOverrideCoverageNV capability.
@ -41,11 +28,11 @@ decoration allows the shader to modify the coverage mask and affect which
samples are used to process the fragment.
When using GLSL source-based shader languages, the code:override_coverage
layout qualifier from GL_NV_sample_mask_override_coverage maps to the
layout qualifier from +GL_NV_sample_mask_override_coverage+ maps to the
code:OverrideCoverageNV decoration.
To use the code:override_coverage layout qualifier in GLSL the
GL_NV_sample_mask_override_coverage extension must be enabled.
Behavior is described in the GL_NV_sample_mask_override_coverage extension
+GL_NV_sample_mask_override_coverage+ extension must be enabled.
Behavior is described in the +GL_NV_sample_mask_override_coverage+ extension
spec.
=== New Object Types

View File

@ -1,26 +1,15 @@
[[VK_NV_viewport_array2]]
== VK_NV_viewport_array2
include::meta/VK_NV_viewport_array2.txt[]
*Name String*::
+VK_NV_viewport_array2+
*Extension Type*::
Device extension
*Registered Extension Number*::
97
*Status*::
Complete
*Last Modified Data*::
*Last Modified Date*::
2017-02-15
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
*Interactions and External Dependencies*::
- This extension requires the
https://www.khronos.org/registry/spir-v/extensions/NV/SPV_NV_viewport_array2.html[+SPV_NV_viewport_array2+]
SPIR-V extension.
- This extension requires the
https://www.opengl.org/registry/specs/NV/viewport_array2.txt[+GL_NV_viewport_array2+]
https://www.khronos.org/registry/OpenGL/extensions/NV/NV_viewport_array2.txt[+GL_NV_viewport_array2+]
extension for GLSL source languages.
- This extension requires the pname:geometryShader and pname:multiViewport
features.
@ -28,12 +17,10 @@
*Contributors*::
- Piers Daniell, NVIDIA
- Jeff Bolz, NVIDIA
*Contact*::
- Daniel Koch (dkoch 'at' nvidia.com)
This extension adds support for the following SPIR-V extension in Vulkan:
* SPV_NV_viewport_array2
* +SPV_NV_viewport_array2+
which allows a single primitive to be broadcast to multiple viewports and/or
multiple layers.
@ -59,7 +46,7 @@ When using GLSL source-based shading languages, the code:gl_ViewportMask[]
built-in output variable and code:viewport_relative layout qualifier from
+GL_NV_viewport_array2+ map to the code:ViewportMaskNV and
code:ViewportRelativeNV decorations, respectively.
Behaviour is described in the GL_NV_viewport_array2 extension
Behaviour is described in the +GL_NV_viewport_array2+ extension
specificiation.
ifdef::VK_EXT_shader_viewport_index_layer[]

View File

@ -1,28 +1,15 @@
[[VK_NV_viewport_swizzle]]
== VK_NV_viewport_swizzle
include::meta/VK_NV_viewport_swizzle.txt[]
*Name String*::
+VK_NV_viewport_swizzle+
*Extension Type*::
Device extension
*Registered Extension Number*::
99
*Status*::
Complete
*Last Modified Data*::
*Last Modified Date*::
2016-12-22
*Revision*::
1
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- This extension requires Vulkan 1.0.
*Interactions and External Dependencies*::
- This extension requires pname:multiViewport and pname:geometryShader
features to be useful.
*Contributors*::
- Daniel Koch, NVIDIA
- Jeff Bolz, NVIDIA
*Contact*::
- Piers Daniell (pdaniell 'at' nvidia.com)
This extension provides a new per-viewport swizzle that can modify the
position of primitives sent to each viewport.

View File

@ -1,29 +1,14 @@
[[VK_NV_win32_keyed_mutex]]
== VK_NV_win32_keyed_mutex
include::meta/VK_NV_win32_keyed_mutex.txt[]
*Name*::
+VK_NV_win32_keyed_mutex+
*Extension Type*::
Device extension
*Registered Extension Number*::
59
*Status*::
Complete
*Last Modified Date*::
2016-08-19
*Revision*::
2
*IP Status*::
No known IP claims.
*Dependencies*::
- This extension is written against version 1.0 of the Vulkan API.
- Requires +VK_NV_external_memory_capabilities+
- Requires +VK_NV_external_memory_win32+
*Contributors*::
- James Jones, NVIDIA
- Carsten Rohde, NVIDIA
*Contact*::
- Carsten Rohde (crohde 'at' nvidia.com)
Applications that wish to import Direct3D 11 memory objects into the Vulkan
API may wish to use the native keyed mutex mechanism to synchronize access

View File

@ -87,6 +87,9 @@ ifdef::VK_KHX_device_group[]
include::../api/flags/VkPeerMemoryFeatureFlagsKHX.txt[]
endif::VK_KHX_device_group[]
include::../api/flags/VkPipelineCacheCreateFlags.txt[]
ifdef::VK_EXT_validation_cache[]
include::../api/flags/VkValidationCacheCreateFlagsEXT.txt[]
endif::VK_EXT_validation_cache[]
include::../api/flags/VkPipelineColorBlendStateCreateFlags.txt[]
ifdef::VK_NV_fragment_coverage_to_color[]
include::../api/flags/VkPipelineCoverageToColorStateCreateFlagsNV.txt[]

View File

@ -78,7 +78,7 @@ their name.
* Jeff Vigil, Qualcomm Technologies, Inc.
* Jens Owen, LunarG
* Jeremy Hayes, LunarG
* Jesse Barker, ARM
* Jesse Barker, Unity
* Jesse Hall, Google
* Johannes van Waveren, Oculus VR
* John Kessenich, Google (SPIR-V and GLSL for Vulkan spec author)
@ -115,7 +115,7 @@ their name.
* Neil Henning, Codeplay Software Ltd.
* Neil Trevett, NVIDIA
* Nick Penwarden, Epic Games
* Niklas Smedberg, Epic Games
* Niklas Smedberg, Unity
* Norbert Nopper, Freescale
* Pat Brown, NVIDIA
* Patrick Doane, Blizzard Entertainment

Some files were not shown because too many files have changed in this diff Show More