The Vulkan API Specification and related tools
Python C JavaScript CSS Ruby Makefile Other
Switch branches/tags
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 v1.0-core-20160325 v1.0-core-20160311 v1.0-core-20160310
Nothing to show
Clone or download
Jon Leech
Jon Leech Change log for August 13, 2018 Vulkan 1.1.83 spec update:
  * Update release number to 83.

Public Issues:

  * Use [%inline] directive for all SVGs to reduce file size (public pull
    request 734).
  * Convert XML `value` aliases into \<alias> tags (public pull request
    747).
  * Fix metadoc script showing non-selected extensions (public pull request
    748).
  * Reapply public pull request 742 to make
    ename:VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT part of the
    graphices pipeline (public pull request 749).
  * Fix numerous typos related to accidental duplication of words (public
    pull request 760).
  * Fix `vk.xml` contact typos (public pull request 761).

Internal Issues:

  * Add images to the <<Standard sample locations>> table (internal issue
    1115).
  * Add a definition of "`Inherited from`" precision in the
    <<spirvenv-precision-operation, Precision and Operation of SPIR-V
    Instructions>> section (internal issue 1314).
  * Clarify that both built-in and user-defined variables count against the
    location limits for shader interfaces in the
    <<interfaces-iointerfaces-locations, Location Assignment>> section
    (internal issue 1316).
  * Merge "`required`" capabilities into the <<spirvenv-capabilities-table,
    list of optional: SPIR-V capabilities>> (internal issue 1320).
  * Relax the layout matching rules of descriptors referring to only a
    single aspect of a depth/stencil image, by reference to the new
    <<resources-image-layouts-matching-rule, Image Layout Matching Rules>>
    section (internal issue 1346).
  * Revert extension metadoc generator warning about name mismatches to a
    diagnostic, due to annoying warnings in build output for conscious
    choices we've made (internal issue 1351).

Other Issues:

  * Reserve bits for pending vendor extensions.
  * Make Vulkan consistent with SPIR-V regarding code:DepthReplacing and
    code:FragDepth in the <<interfaces-builtin-variables, Built-In
    Variables>> section.
  * Add missing ChangeLog entries for the previous three spec updates.
Latest commit dd99197 Aug 13, 2018
Permalink
Failed to load latest commit information.
appendices Change log for August 13, 2018 Vulkan 1.1.83 spec update: Aug 13, 2018
chapters Change log for August 13, 2018 Vulkan 1.1.83 spec update: Aug 13, 2018
config Change log for August 13, 2018 Vulkan 1.1.83 spec update: Aug 13, 2018
images Change log for August 13, 2018 Vulkan 1.1.83 spec update: Aug 13, 2018
include/vulkan Change log for August 13, 2018 Vulkan 1.1.83 spec update: Aug 13, 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 August 13, 2018 Vulkan 1.1.83 spec update: Aug 13, 2018
xml Change log for August 13, 2018 Vulkan 1.1.83 spec update: Aug 13, 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
COPYING.md Change log for June 24, 2017 Vulkan 1.0.53 spec update: Jun 27, 2017
ChangeLog.txt Change log for August 13, 2018 Vulkan 1.1.83 spec update: Aug 13, 2018
Makefile Change log for August 13, 2018 Vulkan 1.1.83 spec update: Aug 13, 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 August 13, 2018 Vulkan 1.1.83 spec update: Aug 13, 2018
registry.txt Merge pull request #605 from krOoze/fix_missing_valid Jul 23, 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 Restructure the repository to put the specification Makefile and Apr 5, 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.