mirror of
https://github.com/status-im/Vulkan-Docs.git
synced 2025-02-09 04:54:08 +00:00
Jon Leech
e665b9e691
Change log for May 16, 2018 Vulkan 1.1.75 spec update:
* Update release number to 75. Github Issues: * Use Github handles (e.g. @handle) for contact information in vk.xml, when available (partial fix for public issue 630). * Add size invariance guarantee to slink:VkMemoryRequirements for buffer/image memory requirements (public issue 661). * Correct scope (conditional constructs) in valid usage statement for slink:VkBindImageMemoryInfo (public pull request 684). * Clean up minor markup issues and typos in the `VK_ANDROID_external_memory_android_hardware_buffer` extension appendix (public pull request 698). * Modify registry processing script to avoid irrelevant warnings of benign enumerant redefinitions (public pull request 705). * Fix some duplicate words and some misspelled "`stagess`" (public pull request 712) Internal Issues: * Enable continuous integration tests on the internal Khronos gitlab server by adding a .gitlab-ci.yml file. Note: this does not implement CI on the public Github repository (internal issue 408). * Add link from description of depth clamping in the <<fragops-depth, depth test>> section to the slink:VkPipelineRasterizationStateCreateInfo::pname:depthClampEnable parameter which enables it, making it easily searchable / findable (internal issue 1125). * Clarify that arrays of arrays of descriptors are not allowed in the <<interfaces-resources-descset, Descriptor Set Interface>> and <<interfaces-resources-setandbinding, DescriptorSet and Binding Assignment>> sections (internal issue 1192). * Comment out some redundant nested asciidoctor conditionals in the slink:VkImageViewCreateInfo valid usage block, and explain in all cases why the redundant conditional exist and are commented out (internal issue 1231). * Move a valid usage statement from slink:VkCommandPoolCreateInfo to the parent flink:vkCreateCommandPool, where the device queue is known (internal issue 1233). * Add new slink:VkBaseInStructure and slink:VkBaseOutStructure types which can be used by extensions and implementations for handling Vulkan sType/pNext style structures in a more generic way (internal issue 1265). * Clarify that slink:VkAndroidHardwareBufferFormatPropertiesANDROID::pname:formatFeatures only applies to external-format images. Add references to this in valid usage statements that previously only referred to slink:VkFormatProperties (internal issue 1244). * Fix the description of elink:VkPipelineCreateFlagBits enumerant ename:VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT to match the name (internal issue 1279). * Add a NOTE to the <<interfaces-resources-setandbinding, DescriptorSet and Binding Assignment>> section making it clear that variables sharing a storage class may use identical descriptor set and bindings. Specifically state the sometimes misunderstood ability to have one or more differently typed image descriptors sharing a descriptor set and binding (internal SPIR-V issue 264). * Make DynamicIndexing features and capabilities also control the uniformity of the descriptor used in memory access instructions in the <<interfaces-resources-descset, Descriptor Set Interface>> section. This makes them also apply to variable_pointer usage, which can bypass the array indexing operation (internal SPIR-V issue 289). Other Issues: * Correct flink:vkCmdBlitImage limitations on cubic blits to be 2D only, not 3D. * Update valid usage statements for slink:VkRenderPassCreateInfo and slink:VkInputAttachmentAspectReference. * Move YCbCr-related VU statements from slink:VkDescriptorImageInfo to slink:VkWriteDescriptorSet, where all needed information is known, and remove redundant statements. * Move SPIR-V restriction that images be of either sampled or storage types from the <<interfaces-resources-descset, Descriptor Set Interface>> section to the <<spirvenv-module-validation, Validation Rules within a Module>> section of the SPIR-V appendix.
= 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`.
Description
Languages
JavaScript
59.4%
Python
32.6%
CSS
3.1%
Ruby
2%
Makefile
1.1%
Other
1.7%