The Vulkan API Specification and related tools
Switch branches/tags
v1.1.86 v1.1.85 v1.1.84 v1.1.83 v1.1.82 v1.1.81 v1.1.80 v1.1.79 v1.1.78 v1.1.77 v1.1.76 v1.1.75 v1.1.74 v1.1.73 v1.1.72 v1.1.71 v1.1.70 v1.0.69-core v1.0.68-core v1.0.67-core v1.0.66-core v1.0.65-core v1.0.64-core v1.0.63-core v1.0.62-core v1.0.61-core v1.0.60-core v1.0.59-core v1.0.58-core v1.0.57-core v1.0.56-core v1.0.55-core v1.0.54-core v1.0.53-core v1.0.51-core v1.0.50-core v1.0.49-core v1.0.48-core v1.0.47-core v1.0.46-core v1.0.45-core v1.0.44-core v1.0.43-core v1.0.42-core v1.0.41-core v1.0.40-core v1.0.39-core v1.0.38-core v1.0.36-core v1.0.35-core v1.0.34-core v1.0.33-core v1.0-core+wsi-20160812 v1.0-core+wsi-20160805 v1.0-core+wsi-20160722 v1.0-core+wsi-20160715 v1.0-core+wsi-20160710 v1.0-core+wsi-20160701 v1.0-core+wsi-20160624 v1.0-core+wsi-20160617 v1.0-core+wsi-20160610 v1.0-core+wsi-20160527 v1.0-core+wsi-20160520 v1.0-core+wsi-20160513 v1.0-core+wsi-20160429 v1.0-core+wsi-20160422 v1.0-core+wsi-20160415 v1.0-core+wsi-20160408 v1.0-core+wsi-20160401 v1.0-core+wsi-20160325 v1.0-core+wsi-20160311 v1.0-core+wsi-20160310 v1.0-core+wsi-20160304 v1.0-core+wsi-20160226 v1.0-core+wsi-20160216 v1.0-core-20161025 v1.0-core-20161014 v1.0-core-20161007 v1.0-core-20160930 v1.0-core-20160923 v1.0-core-20160916 v1.0-core-20160906 v1.0-core-20160826 v1.0-core-20160812 v1.0-core-20160805 v1.0-core-20160722 v1.0-core-20160715 v1.0-core-20160710 v1.0-core-20160701 v1.0-core-20160624 v1.0-core-20160617 v1.0-core-20160610 v1.0-core-20160527 v1.0-core-20160520 v1.0-core-20160513 v1.0-core-20160429 v1.0-core-20160422 v1.0-core-20160415 v1.0-core-20160408 v1.0-core-20160401
Nothing to show
Clone or download
Jon Leech
Jon Leech Change log for September 29, 2018 Vulkan 1.1.86 spec update:
  * Update release number to 86.

Internal Issues:

  * Add new <<resources-image-creation-limits, Image Creation Limits>>
    section and reference that from valid usage statements, reducing
    combinatorial complexity of extension-dependent VUs. Also fixes some
    underspecified limits (such as pname:maxMipLevels) in the VUs for
    slink:VkImageCreateInfo when
    slink:VkExternalMemoryImageCreateInfo::pname:externalMemoryHandles
    contains multiple bits, and fixes incorrectly (and underspecified)
    limits when an Android external format is used (internal issue 1370).
  * Remove unused "`Fragment Area Granularity`" glossary entry accidentally
    introduced in the 1.1.85 update.

New Extensions:

  * `VK_KHR_driver_properties`
  * `VK_KHR_shader_atomic_int64`
  * The specification sources contain text for another extension,
    `VK_EXT_image_drm_format_modifier`, but this extension is not yet
    complete, and is marked disabled in `vk.xml`. The extension will be
    enabled, and become part of the spec, only when the authors decide it is
    ready.
Latest commit 7ea62a0 Sep 29, 2018
Permalink
Failed to load latest commit information.
appendices Change log for September 29, 2018 Vulkan 1.1.86 spec update: Sep 29, 2018
chapters Change log for September 29, 2018 Vulkan 1.1.86 spec update: Sep 29, 2018
config Change log for August 13, 2018 Vulkan 1.1.83 spec update: Aug 13, 2018
images Change log for September 19, 2018 Vulkan 1.1.85 spec update: Sep 16, 2018
include/vulkan Change log for September 29, 2018 Vulkan 1.1.86 spec update: Sep 29, 2018
katex Restructure the repository to put the specification Makefile and Apr 5, 2018
man Restructure the repository to put the specification Makefile and Apr 5, 2018
out Change log for March 5, 2018 Vulkan 1.1.72 spec update: Apr 5, 2018
scripts Restructure the repository to put the specification Makefile and Apr 5, 2018
src/ext_loader Change log for May 25, 2018 Vulkan 1.1.76 spec update: May 25, 2018
style Change log for September 8, 2018 Vulkan 1.1.84 spec update: Sep 8, 2018
xml Change log for September 29, 2018 Vulkan 1.1.86 spec update: Sep 29, 2018
.gitattributes Restructure the repository to put the specification Makefile and Apr 5, 2018
.gitignore Update gitignore Apr 9, 2018
.gitlab-ci.yml Change log for May 16, 2018 Vulkan 1.1.75 spec update: May 17, 2018
BUILD.adoc Restructure the repository to put the specification Makefile and Apr 5, 2018
CODE_OF_CONDUCT.md Add CODE_OF_CONDUCT.md Sep 24, 2018
COPYING.md Change log for June 24, 2017 Vulkan 1.0.53 spec update: Jun 27, 2017
ChangeLog.txt Change log for September 29, 2018 Vulkan 1.1.86 spec update: Sep 29, 2018
Makefile Change log for September 29, 2018 Vulkan 1.1.86 spec update: Sep 29, 2018
README.adoc Restructure the repository to put the specification Makefile and Apr 5, 2018
checkLinks.py Restructure the repository to put the specification Makefile and Apr 5, 2018
copyright-ccby.txt Restructure the repository to put the specification Makefile and Apr 5, 2018
copyright-spec.txt Change log for June 18, 2018 Vulkan 1.1.78 spec update: Jun 18, 2018
fixupRef.py Restructure the repository to put the specification Makefile and Apr 5, 2018
genRef.py Change log for April 15, 2018 Vulkan 1.1.73 spec update: Apr 15, 2018
genRelease Minor build fixes. Jun 18, 2018
genspec.py Minor build fixes. Jun 18, 2018
installRelease Restructure the repository to put the specification Makefile and Apr 5, 2018
makeAllExts Restructure the repository to put the specification Makefile and Apr 5, 2018
makeExt Restructure the repository to put the specification Makefile and Apr 5, 2018
makeKHR Restructure the repository to put the specification Makefile and Apr 5, 2018
promote.py Fix Makefile PATCHVERSION to 72, and finish cleaning up after the Apr 5, 2018
refDesc.py Restructure the repository to put the specification Makefile and Apr 5, 2018
refPageNotes.md Restructure the repository to put the specification Makefile and Apr 5, 2018
reflib.py Change log for April 15, 2018 Vulkan 1.1.73 spec update: Apr 15, 2018
reflow.py Fix Makefile PATCHVERSION to 72, and finish cleaning up after the Apr 5, 2018
reflow_count.py Change log for September 29, 2018 Vulkan 1.1.86 spec update: Sep 29, 2018
registry.txt Change log for September 19, 2018 Vulkan 1.1.85 spec update: Sep 16, 2018
sandboxCopy Change log for March 5, 2018 Vulkan 1.1.72 spec update: Apr 5, 2018
styleguide.txt Change log for August 13, 2018 Vulkan 1.1.83 spec update: Aug 13, 2018
update_valid_usage_ids.sh Fix Makefile PATCHVERSION to 72, and finish cleaning up after the Apr 5, 2018
vkspec.txt Change log for September 19, 2018 Vulkan 1.1.85 spec update: Sep 16, 2018

README.adoc

Vulkan® API Documentation Project

This repository contains formal documentation of the Vulkan API. This includes the Specification of the Vulkan API, including extensions; the reference (“man”) pages; the XML API Registry; header files; and related tools and scripts.

The authoritative public repository is located at https://github.com/KhronosGroup/Vulkan-Docs/ . Issues, proposed fixes for issues, and other suggested changes should be created using Github.

Branch Structure

With the release of Vulkan 1.1, the current Specification is now maintained in the master branch of the repository. It is possible to generate both Vulkan 1.1 and Vulkan 1.0 Specifications from this branch.

1.0 Branch Is Obsolete

The 1.0 branch in which the 1.0 Specification was previously maintained is now obsolete. The 1.0 branch will not be updated going forward, and all outstanding pull requests or merge requests against the 1.0 branch must be rebased on, and retargeted to master.

Directory Structure

The directory structure was changed following the 1.1.70 spec update to move the specification directory to the root of the repository, and move other content relative to that. There may be additional cleanup and simplification in the future.

README.adoc             This file
BUILD.adoc              Build targets and methods for the specification
ChangeLog.txt           Change log summary for each public spec update
appendices/             Specification appendices
chapters/               Specification chapters
config/                 asciidoc configuration
images/                 Images (figures, diagrams, icons)
include/vulkan/         Vulkan headers, generated from the Registry
man/                    Reference (manual) pages for API, mostly extracted from the spec source
xml/                    XML API Registry (vk.xml) and related scripts
src/ext_loader/         Extension loader library

Building the Specification and Reference Pages

The document sources are marked up in asciidoctor format, and we use asciidoctor and related toolchain components to generate output documents. See BUILD.adoc for more information on installing the toolchain and building the Specification.

The header files (include/vulkan/vulkan*.h) and many parts of the specification and reference page documents are generated from descriptions in the XML API Registry (xml/vk.xml). The generated files, with the exception of header files, are not checked into the repository. If you change vk.xml, you can regenerate the header by going to xml/ and running:

$ make clean install

The other generated files are built as required via dependencies in the top-level Makefile.