911a764694
* Update release number to 87. Public Issues: * Merge flink:vkCmdPipelineBarrier self-dependency barrier VUs referring to the same subpass dependency (public pull request 756). * Describe default value of `"optional"` attribute in the registry schema document (public issue 769) * Fix links in <<VK_NVX_raytracing>> extension (public pull request 805). * Mark the <<VK_KHR_mir_surface>> extension obsolete (see public issue 814 - does not close this, however). * Fix missing endif in Image Creation block (public issue 817). Internal Issues: * Clarify that the compressed texture formats corresponding to <<features-features-textureCompressionETC2>>, <<features-features-textureCompressionASTC_LDR>>, and <<features-features-textureCompressionBC>> is not contingent on the feature bits, and may be supported even if the features are not enabled (internal issue 663). * Clarify that code:FragStencilRefEXT is output only in the <<interfaces-builtin-variables, Built-In Variables>> section (internal issue 1173). * Identify and correct many overly-aggressive uses of "`undefined`", and narrow them down, where straightforward to do so. Mark such resolved uses of "`undefined`" with the custom undefined: macro. Add a new <<writing-undefined, Describing Undefined Behavior>> section (internal issue 1267). * Don't require code:inline_uniform_block descriptors to be populated before use in the flink:vkAllocateDescriptorSets section (internal issue 1380). * Allow suppressing inline SVG images by controlling this with an attribute set in the Makefile, rather than the explicit [%inline] directive (internal issue 1391). * Mark 'Khronos' as a registered trademark in several places, now that it is one. * Fix typo in the <<VK_KHR_shader_atomic_int64>> appendix using the GLSL naming of the compare exchange op when referring to the SPIR-V op. * Specify in the flink:vkGetPhysicalDeviceQueueFamilyProperties section that all implementations must support at least one queue family, and that every queue family must contain at least one queue. * Make slink:VkPipelineDynamicStateCreateInfo::pname:dynamicStateCount, slink:VkSampleLocationsInfoEXT::pname:sampleLocationsPerPixel, and slink:VkSampleLocationsInfoEXT::pname:sampleLocationsCount optional, to fix bogus implicit valid usage checks that were causing failures in the conformance tests. * Fix vendor tag in reserved extension 237 constants. Does not affect anything since it's just a placeholder, but this should avoid further comments. * Minor markup fixes in some extension appendices. New Extensions: * `<<VK_FUCHSIA_imagepipe_surface>>` |
||
---|---|---|
appendices | ||
chapters | ||
config | ||
images | ||
include/vulkan | ||
katex | ||
man | ||
out | ||
scripts | ||
src/ext_loader | ||
style | ||
xml | ||
.gitattributes | ||
.gitignore | ||
.gitlab-ci.yml | ||
BUILD.adoc | ||
CODE_OF_CONDUCT.md | ||
COPYING.md | ||
ChangeLog.txt | ||
Makefile | ||
README.adoc | ||
checkLinks.py | ||
copyright-ccby.txt | ||
copyright-spec.txt | ||
fixupRef.py | ||
genRef.py | ||
genRelease | ||
genspec.py | ||
installRelease | ||
makeAllExts | ||
makeExt | ||
makeKHR | ||
promote.py | ||
refDesc.py | ||
refPageNotes.md | ||
reflib.py | ||
reflow.py | ||
reflow_count.py | ||
registry.txt | ||
sandboxCopy | ||
styleguide.txt | ||
update_valid_usage_ids.sh | ||
vkspec.txt |
README.adoc
= Vulkan^(R)^ 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. == Generating Headers and Related Files 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`.