* 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.
* Update release number to 82.
Public Issues:
* Add flink:vkDestroyPipelineLayout valid usage statement that the layout
must not have been used with command buffers still in the recording
state (public issue 730).
* Correct \<unused> tag for elink:VkResult in `vk.xml` (public merge
request 746).
Internal Issues:
* Add a valid usage statement to flink:vkQueueSubmit, and similar language
to the definitions of <<synchronization-queue-transfers-acquire, acquire
operations>> requiring that an acquire operation follow a previous
release of the same subresource (internal issue 1290).
* Add <<resources-image-format-features,Image Format Features>> and
<<resources-image-view-format-features,Image View Format Features>>
sections that precisely define the slink:VkFormatFeatures supported by
images and image views, and rewrite valid usage statements to reference
these sections instead of duplicating language (internal issue 1310).
* Reword and consolidate synchronization valid usage statements for
flink:vkCmdPipelineBarrier such that they correctly account for mutiple
possible self-dependencies (internal issue 1322).
* Change order of <<Standard sample locations>> for 2xMSAA (internal issue
1347).
* Add definitions of "`<<Correctly Rounded>>`" and "`<<ULP>>`" in the
SPIR-V environment appendix, and "`Units in the Last Place (ULP)`" in
the glossary.
New Extensions:
* `VK_NV_device_diagnostic_checkpoints`
* Update release number to 78.
Public Issues:
* Change markup so parameter descriptions include links to structures,
instead of just their names (public issue 697).
* Resume publishing updated Vulkan 1.0 + KHR extensions and Vulkan 1.0 +
all extensions versions of the specification (public issue 722).
* Reapply fixes from public pull request 698 for
`VK_ANDROID_external_memory_android_hardware_buffer`, which accidentally
were reverted at some point (public pull request 724).
* Fix undefined format valid usage statements for slink:VkImageCreateInfo
in the presence of the
`VK_ANDROID_external_memory_android_hardware_buffer` extension (public
pull request 725).
* Miscellaneous markup consistency fixes (public pull request 728).
Internal Issues:
* When building specifications containing vendor extensions, add terms to
the Khronos spec copyright specifying that the result is not a ratified
specification (internal issue 739).
* Change the value of the
pname:maxDescriptorSetUpdateAfterBindUniformBuffers minimum limit to 72
(6 times pname:maxPerStageDescriptorUpdateAfterBindUniformBuffers) in
the <<features-limits-required, Required Limits>> table (internal issue
1300).
Other Issues:
* Fix link to resource image view compatibility table in the valid usage
statements for slink:VkImageFormatListCreateInfoKHR (internal pull
request 2711).
* Update release number to 77.
Public Issues:
* Remove redundant asciidoctor ifdef in slink:VkDeviceCreateInfo valid
usage statement (public pull request 718).
Internal Issues:
* Require that the returned slink:VkMemoryRequirements::pname:alignment
reflect the minimum alignment requirements for the buffer's usages, and
make dynamic offset alignment valid usage more explicit for
flink:vkBindBufferMemory and flink:vkCmdBindDescriptorSets (internal
issue 1170).
* Explicitly state that objects of type code:OpTypeImage,
code:OpTypeSampler, and code:OpTypeSampledImage must not be stored to in
the <<spirvenv-module-validation, Validation Rules within a Module>>
section (internal issue 1262).
* Clarify rules about validating descriptor set/binding against storage
class and descriptor type in the <<spirvenv-module-validation,
Validation Rules within a Module>> section, and add an anchor for and
references to the <<interfaces-resources-storage-class-correspondence,
Shader Resource and Storage Class Correspondence>> table (internal issue
1266).
* Use correct spelling of SPIR-V decoration code:NonWritable in several
places (internal issue 1298).
Other Issues:
* Update specification links to files in the old
KhronosGroup/Vulkan-LoaderAndValidationLayers repository with
corresponding links into the new repositories that replace it.
* Move validity requirement for slink:VkSamplerCreateInfo into the valid
usage block instead of the body text, and give it a VUID.
* Use the full name of the "`style guide`" in a reference in the
description of slink:vkGetPhysicalDeviceProperties, update the
<<vulkan-styleguide, link to that document>>, and use the the full name
in the registry index page.
* 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.
* Update release number to 73.
Github Issues:
* Refine swapchain association with surface for slink:VkSwapchainKHR, with
matching valid usage statements for slink:VkSwapchainCreateInfoKHR and
discussion following the <<swapchain-wsi-image-create-info>> table
(public issue 637).
* Re-remove several valid usage statements from slink:VkImageCreateInfo
that had previously been removed at the time that
ename:VK_IMAGE_CREATE_EXTENDED_USAGE_BIT was introduced. These
statements had incorrectly been restored due to an glitch while merging
from the old `1.0` branch to the current `master` branch (public issue
683).
Internal Issues:
* Fix reference page generation and configure build to generate reference
pages 1.1 with all extensions, rather than core only, as was the case
for the 1.0 ref pages (internal issues 484, 1056, 1205).
* Require that
slink:VkMemoryDedicatedRequirements::pname:prefersDedicateAllocation is
ename:VK_TRUE when
slink:VkMemoryDedicatedRequirements::pname:requiresDedicateAllocation is
ename:VK_TRUE (internal issue 1222).
* Fix Ruby extension code so `diff_html` Makefile target works (internal
issue 1230).
* Update `genRelease` script to generate 1.1 + all extensions reference
pages - but not the single-page HTML / PDF versions, which are even
larger than the API spec (internal issue 1245).
Other Issues:
* Add missing attributes to `vk.xml` for `VK_ANDROID_native_buffer`.
* Specify that the slink:VkAttachmentDescription::pname:format member is
the format of the image *view* that will be used for the attachment.
* Use core sname:VkPhysicalDeviceFeatures2 in the `structextends` `vk.xml`
attribute for sname:VkPhysicalDeviceDescriptorIndexingFeaturesEXT and
sname:VkPhysicalDeviceDescriptorIndexingPropertiesEXT, rather than the
KHR equivalent it was promoted from.
* Fix the "`Fragment Input Attachment Interface`" glossary entry to match
the specification body.
* Clarify the interaction of sRGB images used as storage or texel buffers
with <<textures-output-format-conversion, Texel Output Format
Conversion>>.
* Moved three valid usage statements from
slink:VkRenderPassMultiviewCreateInfo up to
slink:VkRenderPassCreateInfo, and added a new valid usage statement for
slink:VkRenderPassInputAttachmentAspectCreateInfo.
* Added valid usage statements for slink:VkBufferMemoryBarrier and
slink:VkImageMemoryBarrier reflecting the global requirement that
"`non-sparse resources must be bound to memory before being recorded to
command`".
New Extensions:
- previously VU exluded if 1.1 or VK_KHR_device_group,
but if swapchain ext. not defined memory param should
be valid too =>
now excluded iff VK_KHR_swapchain is defined too
* Update release number to 72.
Github Issues:
* Restructure the repository to put the specification `Makefile` and
associated spec source material at the top level, `vk.xml` and
associated scripts material in `xml/`, and generated include and source
files in `include/vulkan/` and `src/ext_loader/`, respectively (public
issue 436).
* Add missing bullet point markup to flink:vkCmdCopyImage valid usage
statement, so it gets a VUID assigned (public issue 627).
* Fix broken links in a couple of extension appendices (public pull
request 665).
* Add the \<platform> tag to the index in section 4.1 of the registry
schema documentation, and add the protect= attribute of \<extension>
tags to the comments in `registry.rnc` (public issues 673, 678).
* Add missing valid usage statements for sparse image interactions to
flink:VkImageCreateInfo (public pull request 675).
* Fix improper usage and grammar of "`can: not`" (public pull request
681).
* Remove duplicate spec language and NOTE on present layout between the
flink:vkAcquireNextImageKHR and flink:vkAcquireNextImage2KHR commands
(public pull request 685).
* Fix some typos and markup issues (public pull request 689; public issues
642, 667, 687).
* Fix typo etext:VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_FENCE_FD_BIT ->
ename:VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT in the
<<external-semaphore-handle-types-compatibility, External semaphore
handle types compatibility>> table (public pull request 691).
Internal Issues:
* Remove the need for the "`noautovalidity`" attribute on extension
structures in `vk.xml`. It is now implied by the "`structextends`"
attribute instead (internal issue 942).
* Replace uses of "`currently bound`" with "`bound`", since "`currently`"
is redundant and distracting, and add a corresponding rule to the style
guide (internal issue 993).
* Fixed subtle issues with the last updates to flink:vkAcquireNextImageKHR
language that had resulted in ambiguities (internal issue 1178).
* Make it clear that only one query of a given type is allowed at a time
by reordering valid usage statements for flink:vkCmdBeginQuery and
flink:vkCmdEndQuery, and removing redundant ones (internal issue 1213).
* Swapped OL1 and OL3 in `tessparamUL.svg` to match previous version, and
fixed where "`(no edge)`" appears (internal issue 1215).
Other Issues:
* Fixed a minor problem with the valid usage statement extraction script,
and corresponding markup in the spec source.
New Extensions:
* `VK_AMD_shader_core_properties`
* `VK_EXT_descriptor_indexing`
* `VK_NV_shader_subgroup_partitioned`
associated material at the top level, vk.xml and associated material in
xml/, and generated include and source files in include/vulkan/ and
src/ext_loader/, respectively (public issue 436).