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.
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.
README.adoc This file
ChangeLog.txt Change log summary for each public spec update
doc/specs/ Main documentation tree
vulkan/ Vulkan specification
appendices/ Appendices - one file each
chapters/ Chapters - one file each
config/ asciidoc configuration
images/ Images (figures, diagrams, icons)
man/ Reference (manual) pages for API, mostly extracted from the spec source
src/spec/ XML API Registry (vk.xml) and related scripts
src/vulkan/ Vulkan headers, generated from the Registry
src/ext_loader/ Extension loader library
The document sources are marked up in asciidoctor
format, and we use
asciidoctor and related toolchain components to generate output documents.
See doc/specs/vulkan/README.adoc
for more information on installing the
toolchain and building the Specification.
The header files (src/vulkan/vulkan*.h
) and many parts of the
specification and reference page documents are generated from descriptions
in the XML API Registry (src/spec/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 src/spec
and
running:
$ make clean install
The other generated files are built as required via dependencies in
doc/specs/vulkan/Makefile
.