mirror of
https://github.com/status-im/Vulkan-Docs.git
synced 2025-01-19 02:41:51 +00:00
36 Commits
Author | SHA1 | Message | Date | |
---|---|---|---|---|
Jon Leech
|
476e3f422d |
Change log for March 18, 2019 Vulkan 1.1.104 spec update:
* Update release number to 104. Public Issues: * Remove the incorrect line from "`Initial`" to "`Invalid`" state in the <<commandbuffer-lifecycle-diagram, Lifecycle of a command buffer>> diagram (public issue 881). * Add Fuchsia platform to <<boilerplate-wsi-header-table, Window System Extensions and Headers>> table (public pull request 933). * Change the type of slink:VkBufferDeviceAddressCreateInfoEXT::pname:deviceAddress from basetype:VkDeviceSize to basetype:VkDeviceAddress. These are both typedefs of code:uint64_t, so it is an ABI-compatible change (public issue 934). Internal Issues: * Remove generated header files and update the CI tests to build a copy of the headers for use by the hpp-generate / hpp-compile CI stages. Targets to generate the headers will not be removed, but keeping these generated files in the repository increased the frequency of conflicts between branches when merging to master (internal issue 745). * Reword "`undefined: behavior if *action*" to "`must: not do *action*`" in the places the old terminology was used, and add a new <<writing-undefined, Describing Undefined Behavior>> section of the style guide to explain how to write such language in the future (internal issue 1579). * Move almost all Python scripts into the toplevel `scripts/` directory. Apply extensive internal edits to clean up and simplify the scripts, and try to follow PEP8 guidelines. Generalize the scripts with the use of a Conventions object controlling many aspects of output generation, to enable their use in other Khronos projects with similar requirements. Autogenerate extension interface refpages (these are experimental and may be retired going forward). New Extensions: * `VK_AMD_display_native_hdr` * `VK_EXT_full_screen_exclusive` (internal issue 1439) * `VK_EXT_host_query_reset` * `VK_EXT_pipeline_creation_feedback` (internal issue 1560) * `VK_KHR_surface_protected_capabilities` (internal issue 1520) |
||
Jon Leech
|
4ad4fd1716 |
Change log for March 11, 2019 Vulkan 1.1.103 spec update:
* Update release number to 103. Public Issues: * Remove (unnecessary) scoped modification order case from the memory model <<memory-model-location-ordered, location-ordered>> definition (public pull request 924). * Add an <<memory-model-acyclicity, acyclicity>> axiom to the memory model (public pull request 927). Internal Issues: * Fix reversed logic of slink:VkFormatProperties discussion of multi-plane formats and ename:VK_FORMAT_FEATURE_DISJOINT_BIT (internal issue 1493). * Clarify how slink:VkImageStencilUsageCreateInfoEXT works, including new valid usage statements for flink:vkCmdClearDepthStencilImage, and the <<copies, Common Operation>> section of the Copy Commands chapter (internal issue 1565). * Update <<spirvenv-precision-operation, Precision and Operation of SPIR-V Instructions>> section to require that denorms be preserved by several instructions that don't perform any mathematical operations (internal issue 1584). * Remove duplicate valid usage statement from flink:vkAcquireNextImageKHR (internal merge request 3062). |
||
Jon Leech
|
35e7bee5f0 |
Change log for March 3, 2019 Vulkan 1.1.102 spec update:
* Update release number to 102. Public Issues: * Simplify flink:vkGetImageMemoryRequirements constraint for ename:VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT (public pull request 817). * Fix typo in markup of the <<textures-texel-coordinate-systems-diagrams, Texel Coordinate Systems, Corner Sampling>> image that was generating complaints from chunked HTML output generation (public pull request 928). Internal Issues: * Split the old <<features, Features>> chapter into four chapters: <<features, Features>>, <<limits, Limits>>, <<formats, Formats>>, and <<capabilities, Capabilities>>, with minor edits to the introductory paragraph of each chapter. Anchor names in these chapters were changed, with corresponding effects to xrefs to these anchors elsewhere in spec markup . The purpose is to make the chunked HTML spec output load faster on what was previously a single, gigantic chapter (internal issue 1554). * Add ename:VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV, to the supported pipeline stages for ename:VK_ACCESS_UNIFORM_READ, ename:VK_ACCESS_SHADER_READ, and ename:VK_ACCESS_SHADER_WRITE in the <<synchronization-access-types-supported>> table. * Correct legal name of Google, LLC in vk.xml \<tags> section and a copyright statement. * Clarify that Vulkan treats the Android code:AHARDWAREBUFFER_FORMAT_R8G8B8X8_UNORM format as RGBA, and the application is responsible for forcing the X/A component to be read as 1.0, in the <<memory-external-android-hardware-buffer-formats>> table. * Clarify the vertex order of various primitive topologies, and define the order of transform feedback vertex capture based on that. This involves a lot of refactoring and cleanup in the <<drawing-primitive-topologies, Primitive Topologies>>, <<geometry-input, Geometry Shader Input Primitives>> sections, and <<vertexpostproc-transform-feedback Transform Feedback>> sections, and numerous places in the <<tessellation>> chapter, New Extensions: * `VK_EXT_metal_surface` * `VK_EXT_ycbcr_image_arrays` (internal issue 1361). * `VK_NVX_image_view_handle` |
||
Jon Leech
|
55220784e0 |
Change log for February 17, 2019 Vulkan 1.1.101 spec update:
* Update release number to 101. Public Issues: * Make clear that memory types for imported host memory must be host visible in slink:VkMemoryHostPointerPropertiesEXT.txt (public issue 897). * Make <<interfaces-resources-layout, WARNING block>> into a NOTE block, per the styleguide (public pull request 916). Internal Issues: * Make <<textures-output-format-conversion, computation of derivatives in non-uniform flow control>> have undefined behavior (internal issue 1367). * Make behavior, not just values, undefined for <<textures-layout-validation, reads from inconsistent YCbCr layouts>> (internal issue 1366). * Consolidate version and extension behavior documentation in the <<extended-functionality, Extended Functionality>> appendix, While a great deal of text was moved from other parts of the Specification into the appendix, this just serves to simplify and make consistent discussions of versions and extensions (internal issue 1473). * Add limits for slink:VkPhysicalDeviceRayTracingPropertiesNV in the <<features-limits-types, Required Limit Types>> and <<features-limits-required, Required Limits>> tables (internal issue 1511). * Disallow <<memory-protected-memory, indirect calls within protected command buffers>> by adding valid usage statements for the related indirect dispatch and draw commands (internal issue 1513). * Add valid usage stataements to slink:VkGraphicsPipelineCreateInfo, slink:VkSubpassDescription, slink:VkSubpassDescription2KHR, slink:VkSubpassDescriptionDepthStencilResolveKHR, and slink:VkImageViewCreateInfo preventing the creation of a renderpass with attachments in formats that are not supported for rendering (internal issue 1552). * Qualify valid usage statements for slink:VkAttachmentReference::pname:layout parameter so restrictions only apply if an attachment is ename:VK_ATTACHMENT_UNUSED (internal issue 1561). * Add valid usage statement for flink:vkCmdDrawIndirectByteCountEXT restricting pname:vertexStride to be positive (internal issue 1566). * Make the `VK_EXT_sample_locations` extension depend on `VK_KHR_get_physical_device_properties2` in `vk.xml`. * Rearrange and simplify the <<interfaces-resources-layout, block layout rules>>. New Extensions: * `VK_NV_cooperative_matrix` * `VK_EXT_depth_clip_enable` (internal issue 1485). |
||
Jon Leech
|
fcf5980cf6 |
Change log for February 10, 2019 Vulkan 1.1.100 spec update:
* Update release number to 100. Public Issues: * Clarify that scoped modification order only relates to <<memory-model-atomic-operation, atomic writes>> (public pull request 906). * Remove `readme.txt` reference from `xml/README.adoc` (public pull request 907). * Add missing slink:VkShaderResourceUsageAMD to the <<Vk_AMD_shader_info>> appendix (public pull request 908). * Fix markup for <<VK_EXT_filter_cubic>> appendix (public pull request 911). * Fix typo "`attachment`" (public pull request 914). * Alias the enums for `VK_IMG_filter_cubic` properly to the corresponding `VK_EXT_filter_cubic` enums, so they appear in the corresponding enumerated types, instead of as #defines (Vulkan-Headers issue 40). Internal Issues: * Remove nested conditionals in valid usage statements for slink:VkFramebufferCreateInfo and flink:vkCmdPipelineBarrier by duplicating statements along ifdef/ifndef paths for VK_KHR_depth_stencil_resolve (internal issue 1527). * Clarify allowed values of <<spirv-precision-operation, SPIR-V operations near infinity>>. For very large results of operations the allowed range of return values as defined in the spec didn't include the largest finite number. In some rounding modes (eg. RTZ) the largest finite number is the correctly rounded result, so it should be allowed. * Require descriptor types to match in slink:VkCopyDescriptorSet. |
||
Jon Leech
|
b59ec03ee3 |
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99. Public Issues: * Add missing pname:pMemoryHostPointerProperties description to flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896). * Minor markup fixes (public pull request 900). * Minor update to `khronos.css` and markup fixes (originally proposed in public pull request 901, but done via an internal MR). Internal Issues: * Document restrictions on image queries for Y'CbCr formats in the <<features-formats-requiring-sampler-ycbcr-conversion>> table as well as for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo (internal issue 1361). * Correct type of the code:FragSizeEXT built-in in the <<interfaces-builtin-variables, Built-In Variables>> section (internal issue 1526). * Clean up math in the <<textures, Image Operations>> chapter by refactoring, using better naming conventions, updating diagrams to use the correct orientation, etc. (internal merge request 2968). * Fix minor typos for slink:VkImageCreateInfo and slink:VkImageStencilUsageCreateInfoEXT. * Add missing documentation for tlink:VkResolveModeFlagsKHR. * Fix extension dependency of pname:scalarBlockLayout in the <<features-features-requirements, Feature Requirements>> section. * Fix indexing math for shader binding table calculations in the <<shader-binding-table-indexing-rules, Indexing Rules>> section, and use spelling "`any-hit`" consistently. * Reconcile valid usage statement and text for sampled image layouts in slink:VkWriteDescriptorSet (https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551). * Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations require a 64-bit integer for physical storage buffer pointers in the <<spirvenv-module-validation, Validation Rules within a Module>> section. * Update to KaTeX 10.0. New Extensions: * `VK_EXT_filter_cubic` * `VK_NV_dedicated_allocation_image_aliasing` |
||
Jon Leech
|
f1a7c4b4f3 |
Change log for January 13, 2019 Vulkan 1.1.98 spec update:
* Update release number to 98. Public Issues: * Fix missing markup in flink:vkDestroyPipelineLayout valid usage statement (pull request 882). * Add missing contributors for `<<VK_EXT_buffer_device_address>>` (public pull request 891). Internal Issues: * Detect nested bullet points in valid usage blocks and warn about them during VUID assignment (internal issue 1382). * Update the style guide to document the process for reserving new bits in bitmask types (internal issue 1411). * Clarify for slink:VkApplicationInfo::pname:apiVersion and in the <<fundamentals-validusage-versions, Valid Usage for Newer Core Versions>> section when it is valid for an application to use a certain version of Vulkan API functionality (for an instance and for a device/physical device); and when the validation layers must generate an error (internal issue 1412). * Add optional <<memory-model-availability-visibility, transitive availability/visibility operations to the memory model, including a new pname:vulkanMemoryModelAvailabilityVisibilityChains feature for slink:VkPhysicalDeviceVulkanMemoryModelFeaturesKHR (internal issue 1460). * Add the code:StorageBuffer storage class to those in the <<interfaces-resources-descset, Descriptor Set Interface>> (internal issue 1480). * Add missing `returnedonly` tags for a number of returned extension structures that can be passed in pname:pNext chains (internal issue 1515). * Clean up and rearrange some spec language for slink:VkRenderPassCreateInfo and slink:VkAttachmentReference.txt (internal issue 1522). * Correctly round the code:OpVectorTimesScalar and code:OpMatrixTimesScalar SPIR-V operations in the <<Precision of core SPIR-V Instructions>> table (internal merge request 2996). * Work around cases in flink:vkCmdBeginTransformFeedbackEXT, flink:vkCmdEndTransformFeedbackEXT, and slink:VkPipelineCoverageModulationStateCreateInfoNV where an array parameter is `optional` but the length is not in `vk.xml`. This is an interim fix using `noautovalidity` + handcoded VU replacing those that should be autogenerated (internal issue 2944 and https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/480). * Remove redundant capability validation of the code:float16 and code:int8 SPIR-V capabilities from the <<spirvenv-capabilities, Capabilities>> section, since they are already covered in the preceding table. * Update check_spec_links script, including validation for reference page open blocks. Fix errors identified by the script. |
||
Jon Leech
|
56e0289318 |
Change log for January 05, 2019 Vulkan 1.1.97 spec update:
* Update release number to 97. Public Issues: * Add a special case to the <<renderpass-compatibility, Render Pass Compatibility>> rules allowing single-subpass renderpasses to be compatible even if they have different resolve attachment references (public issue 835). * Fix the miss shader binding table record address rule in the <<shader-binding-table-indexing-rules, Miss Shaders>> section to index by code:missIndex, not code:sbtOffset (public issue 875). Internal Issues: * Add a missing anchor to the elink:VkSamplerCreateFlagBits language (internal issue 1483). * Add missing implicit valid usage include for slink:VkHdrMetadataEXT and corresponding `noautovalidity` attributes in `vk.xml` for the externally-defined metadata properties (internal issue 1514). * Remove restrictions on the `mask` parameter of SPIR-V's code:OpGroupNonUniformXor in the <<spirvenv-module-validation, Validation Rules within a Module>> appendix (internal merge request 2971). * Restore `noautovalidity` attribute for slink:VkPipelineViewportWScalingStateCreateInfoNV::pname:pViewportWScalings in `vk.xml` (internal merge request 2975). * Update copyright dates on Khronos-copyrighted files to 2019 (internal merge request 2980). New Extensions: * `VK_KHR_depth_stencil_resolve` * `VK_EXT_buffer_device_address` * `VK_EXT_memory_budget` * `VK_EXT_memory_priority` * `VK_EXT_validation_features` |
||
Jon Leech
|
b557dd2167 |
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96. Public Issues: * Fix typo in `vk.xml` for `structextends` attribute of slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870). * Fix links in optimized PDF output (public PR 879). Internal Issues: * Add a link to GitHub contributors in the <<credits, Other Credits>> section (internal issue 808). * Clarify the behavior of command aliases described in the <<versions,Core Revisions>> and <<initialization-functionpointers, Command Function Pointers>> sections and the registry schema document with respect to whether they are or are not the same entry point, and what the behaviour of the ftext:vkGet*ProcAddr commands is for each alias (internal issue 1462). * Update slink:VkPipelineShaderStageCreateInfo valid usage statements for writing to code:Layer and code:viewportIndex to apply to any vertex processing stage (internal issue 1475). * Make sparse image creation optional for Y'C~B~C~R~ formats in the <<features-required-format-support, Required Format Support>> section and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats requiring sampler Y'C~B~C~R~ conversion for ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue 1476). * Modify the valid usage statement for flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the pname:maxTransformFeedbackBufferDataStride limit rather than the pname:maxVertexInputBindingStride limit, which is a better match for transform feedback related operations (internal issue 1487). * Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to have the `uint32_t` type. This is an imcompatible change to an EXT that's very recently released; although this is against usual Vulkan WG policy, we discussed and consider this an acceptable risk, but have polled the mesa-dev list in case there are use cases we missed (internal issue 1492). * Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and `VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948). * Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395` (internal MR 2950). * Add `check_spec_links.py` script, use it in Gitlab CI, and fix many minor markup issues discovered by the script (internal MR 2955). * Update `BUILD.md` to the current Ruby version (2.5.3), and make some corresponding updates to per-platform build instructions (internal MR 2956). * Fix binding numbers and other details in flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks (internal MR 2960). * Remove some nautovalidity="true" in `vk.xml` for NV extensions where it's clearly wrong (internal MR 2970). |
||
Jon Leech
|
ef29cea94b |
Change log for December 3, 2018 Vulkan 1.1.95 spec update:
* Update release number to 95. Public Issues: * Fix valid usage and XML issues found in public issues 789 and 790 for the `VK_EXT_debug_utils` extension (public pull request 794). * Replace references to `VK_NV_dedicated_allocation` with links to the corresponding slink:slink:VkMemoryDedicatedRequirements and slink:slink:VkMemoryDedicatedAllocateInfo structures in the description of elink:VkExternalMemoryFeatureFlagBits (public issue 801). * Fix miscellaneous minor markup and spelling issues in `VK_NV_ray_tracing` extension (public pull request 860). * Remove "returnedonly" from XML for slink:VkPhysicalDeviceInlineUniformBlockFeaturesEXT and slink:VkPhysicalDeviceVulkanMemoryModelFeaturesKHR (public issue 862). Internal Issues: * Add to the description of the <<features-limits-maxComputeSharedMemorySize, pname:maxCompureSharedMemorySize>> feature to state the shared variables should be packed at least as tightly as std430 (internal issue 1386). * Fix and clarify various references to image and image view usage in flink:vkCmdBindShadingRateImageNV, flink:vkCmdBeginRenderPass, and slink:VkImageStencilUsageCreateInfoEXT (internal issue 1432). * Require that the slink:VkImage mipmap chain match the Android hardware buffer mipmap chain for slink:VkMemoryAllocateInfo (internal issue 1479). * Fix the definition of slink:VkSwapchainCreateInfoKHR valid usage statement 01778 (Vulkan-ValidationLayers!15) * Fix descriptions of <<interfaces-builtin-variables-launchid, code:LaunchIDNV>> and <<interfaces-builtin-variables-launchsize, code:LaunchSizeNV>> to code:uvec3. New Extensions: * `VK_KHR_shader_float16_int8` * `VK_KHR_shader_float_controls` |
||
Jon Leech
|
c24b84795f |
Change log for November 25, 2018 Vulkan 1.1.94 spec update:
* Update release number to 94. Public Issues: * Use the terms "`texel block`" and "`texel block size`" instead of "`data element`" and "`element size`", and define "`element`" as an array slot. In addition to the terminology changes, retitled the <<texel-block-size, Representation and Texel Block Size>> section and added texel block size / no. of texels/block information to the <<features-formats-compatibility, Compatible Formats>> table. There is some additional work underway to make sure the compatibility language makes sense for all of uncompressed, compressed, and multiplanar formats (public issue 763). * Cleanup `VK_NV_ray_tracing` language (public issues 858, 859). Internal Issues: * Specify in <<shaders-invocationgroups, Invocation and Derivative Groups>> and <<textures-output-format-conversion, Texel Output Format Conversion>> that derivative groups are quads when code:SubgroupSize >= 4 (internal issue 1390). * Make the type of slink:VkDescriptorUpdateTemplateCreateInfo::pNext `const` following pattern for the other stext:Vk*CreateInfo structures (internal issue 1459). * Specify that flink:vkCmdClearAttachments executes as a drawing command, rather than a transfer command (internal issue 1463). * Update `VK_NV_ray_tracing` to use code:InstanceId instead of code:InstanceIndex. New Extensions: * `VK_KHR_swapchain_mutable_format` * `VK_EXT_fragment_density_map` |
||
Jon Leech
|
256a1ef661 |
Change log for November 18, 2018 Vulkan 1.1.93 spec update:
* Update release number to 93. Public Issues: * Add spec language for ename:VK_INDEX_TYPE_NONE_NV and fix up slink:VkAccelerationStructureTypeNV (public issue 848). * Add missing suffix in description of slink:VkSubpassDescription2KHR parameters (public pull request 851). * Fix miscellaneous typos (public pull request 855). * Add driver ID for Pastel (public pull request 856). * Add missing include directive for slink:VkMemoryWin32HandlePropertiesKHR implicit valid usage statements (public pull request 857). Internal Issues: * Restrict the storage classes permitted for SPIR-V atomics to what is actually supported, in the <<spirvenv-module-validation, Validation Rules within a Module>> section (internal issue 1123). * Add a missing Valid Usage statement to slink:VkRenderPassCreateInfo for the case pname:stencilLoadOp == ename:VK_LOAD_OP_CLEAR, pname:layout == ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL (internal issue 1408). * Modify optimize-pdf script and Makefile to retain non-optimized original PDF on errors (internal issue 1435). * Add <<spirvenv-module-validation, SPIR-V validation rules>> stating that only the listed code:BuiltIn decorations are permitted, and only when relevante features and extensions are enabled (internal issue 1449). * Remove some duplicated Valid Usage IDs created via cut & paste error (internal issue 1455). * Build HTML output for extension reference pages (internal issue 1461). ** Improve genRef.py handling of aliases defined inside other refpages. ** Emit aliases in pygenerator.py. ** Add XML noautovalidity flag for VkRenderPassCreateFlags until there are some corresponding FlagBits defined. ** Corrected types= attribute on some refpage blocks to 'flags' ** Added refpage blocks for some missing types detected by CI tests. * Fixed many Valid Usage statement issues in slink:VkRenderPassCreateInfo, slink:VkSubpassDescription, slink:VkSubpassDescription2KHR, slink:VkSubpassDependency2KHR, flink:vkCmdBeginRenderPass, flink:vkCmdBeginRenderPass2KHR, and slink:VkRenderPassBeginInfo discovered while adding `VK_KHR_create_renderpass2` to the validation layers. New Extensions: * `VK_EXT_scalar_block_layout` * `VK_EXT_separate_stencil_usage` |
||
Jon Leech
|
279452463a |
Change log for November 12, 2018 Vulkan 1.1.92 spec update:
* Update release number to 92. Public Issues: * Move and modify valid usage statements dealing with pname:aspectMask in flink:vkCmdClearColorImage, flink:vkCmdClearDepthStencilImage, and slink:VkClearAttachment, so they are in places where all necessary information is available (public issue 529). * Fix math markup in <<textures-texel-anisotropic-filtering, Texel Anisotropic Filtering>> (public pull request 840). * Fix misspellings (public pull request 845). Internal Issues: * Add installation instructions and a Makefile "`chunked`" target for chunked HTML generation (internal issue 1352). * Fix pipeline mesh diagram style; also fix a minor bug in the classic pipeline diagram where vertex/index buffers wrongly fed into the vertex shader (internal issue 1436). * Make asciidoctor ERROR output raise an error, and don't suppress executed command output from CI make invocation (internal issue 1454). * Minor typo fixes and clarifications for `VK_NV_raytracing`. * Cleanup extension-specific properties ** Remove duplicated documentation for pname:maxDiscardRectangles, pname:pointClippingBehavior, and pname:maxVertexAttribDivisor (they shouldn't be documented with the other members of slink:VkPhysicalDeviceLimits at all). ** Remove duplicate anchor for pname:maxVertexAttribDivisor ** Consistently document stext:VkPhysicalDevice<Extension>PropertiesKHR *** Always document pname:sType/pname:pNext (was inconsistent before) *** Always mention chaining to slink:VkPhysicalDeviceProperties2 (and not as slink:VkPhysicalDeviceProperties2KHR) *** Always include Valid Usage statements last * Update Makefile 'checklinks' target and associated scripts, and fix markup problems identified by checkLinks.py, so that we can rely on the checklinks script as part of Gitlab CI. |
||
Jon Leech
|
e24e42dcff |
Change log for November 4, 2018 Vulkan 1.1.91 spec update:
* Update release number to 91. Public Issues: * Update Ubuntu subsystem build instructions in `BUILD.adoc` (public pull request 624). * Delete the `VK_KHR_mir_surface` extension from the Specification and XML, due to EOL of the only driver known to have supported it, and near-EOL of Mir itself (public issue 814). * Fix options for some figures that were using old ones (public pull request 841). * Fix various accidentally repeated words (public pull request 843). * Use `time.process_time()`, introduced in Python 3.3, in the scripts instead of `time.clock()`, which will be removed in Python 3.8 (public pull request 844). Internal Issues: * Update valid usage statements for `VK_ANDROID_external_memory_android_hardware_buffer` in slink:VkMemoryAllocateInfo, slink:VkImportAndroidHardwareBufferInfoANDROID, and flink:vkGetAndroidHardwareBufferPropertiesANDROID to actually be verifiable (internal issue 1419). * Update valid usage statements for `VK_ANDROID_external_memory_android_hardware_buffer` in slink:VkMemoryAllocateInfo, slink:VkImageCreateInfo, and slink:VkImageViewCreateInfo to move valid usage statements in doubly-nested bullet points up one level, accomodating limitations of the valid usage extraction script that creates `validusage.json` (internal issue 1434). * Fix typo etext:VK_ACCESS_SHADING_RATE_IMAGE_BIT_NV to the correct ename:VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV. * Add missing etext:VK_STRUCTURE_TYPE_* tokens to appendices for extensions missing them. New Extensions: * `VK_AMD_memory_overallocation_behavior` * `VK_NV_ray_tracing`, replacing `VK_NVX_raytracing` |
||
Jon Leech
|
894211de5f |
(The previous commit didn't actually include internal gitlab changes
since 1.1.89; fixed now). Change log for October 28, 2018 Vulkan 1.1.90 spec update: * Update release number to 90. Public Issues: * Tag flink:vkQueueWaitIdle as `externsync` in `vk.xml` (public pull request 815). * Update README (public pull request 834). * `VK_NV_framebuffer_mixed_samples` and `VK_AMD_mixed_attachment_samples` had confusing and contradictory valid usage statements when read in the all-extensions spec build. Change them to explicitly mention which extension each is for (public issue Vulkan-ValidationLayers/issues/353). Internal Issues: * Update `COPYING.md` to clarify how externally generated Vulkan Specifications (for translations, annotations, or other reasons) must be copyrighted, and acknowledge the Exception Clause on the `vk.xml` license (internal issue 1079). * Specify that flink:vkGetPhysicalDeviceImageFormatProperties may: return pname:maxMipLevels 1 if the format is ycbcr (internal issue 1361). * Clarify previously underspecified language for flink:vkCmdPushConstants::pname:pStageFlags regarding use of push constants across multiple pipelines (internal issue 1403). * Fix typo in XML/headers for ename:VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT, which was previously etext:VK_STRUCTURE_TYPE_IMAGE_EXCPLICIT_DRM_FORMAT_MODIFIER_CREATE_INFO_EXT (internal issue 1428). * Fix markup of equations that were sporadically breaking the `optimize-pdf` step of PDF generation, due (apparently) to inconsistent treatment of unwrapped multicharacter terms by different LaTeX parsers (internal issue 1435). * For the <<memory-model-synchronizes-with synchronizes-with>> memory model relation cases involving a release barrier plus relaxed atomic write, treat the atomic as if it were a release atomic and allow the acquire side to read from its hypothetical release sequence. This is more consistent with how C++ defines synchronization for release fences (internal issue cross-api/memory-model#72). * Minor editorial changes to the <<memory-model, memory model>> appendix based on external feedback. |
||
Jon Leech
|
8d6a7b23a7 |
Change log for October 21, 2018 Vulkan 1.1.89 spec update:
* Update release number to 89. Public Issues: * Clarify the reference to <<features-limits-mipmapPrecisionBits, mipmap precision bits>> in the <<textures-image-level-selection, Image Level(s) Selection>> section (public issue 660). * Update <<debugging-object-types,VkObjectType and Vulkan Handle Relationship>> table with missing types (public pull request 820). * Miscellaneous minor markup cleanup (public pull request 822). * Fix copy/paste bugs in the description of how implicit availability/visibility operations for atomics/barriers are ordered in the <<memory-model-availability-visibility-semantics, Availability and Visibility Semantics>> section (public issue 823). * Add missing shading_rate_image bit from mesh pipeline list in the <<synchronization-pipeline-stages-types>> list (public issue 824). Internal Issues: * Clarify that only statically used members of a push constant block need to be in the push constant range, and stop referring to block members as "`variables`" in the <<interfaces-resources-pushconst, Push Constant Interface>> section. This is related to https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/340 (internal issue 1401). * Clarify interaction between flink:vkCmdSetDeviceMask and render pass control commands in the slink:VkDeviceGroupRenderPassBeginInfo section (internal issue 1416). * Miscellaneous minor markup cleanup. * Remove types defined by `"disabled"` extensions from validextensionstructs in the XML processing scripts, so downstream code generators don't emit them. |
||
Jon Leech
|
0a7a04f32b |
Change log for October 13, 2018 Vulkan 1.1.88 spec update:
* Update release number to 88. Public Issues: * Make clear that tname:PFN_vkDebugUtilsMessengerCallbackEXT::pname:messageTypes is a bitmask, and correct a typo in the spelling of slink:VkDebugUtilsMessengerCreateInfoEXT.txt::pname:messageType (public pull request 800). * Make an ABI-compatible change of the type of slink:VkPhysicalDeviceDriverPropertiesKHR::pname:driverID to use the new elink:VkDriverIdKHR type (public issue 811). Internal Issues: * Clarify for the <<features-features-shaderStorageImageExtendedFormats>> feature and in the <<spirvenv-capabilities-table>> that the feature means that all of the formats are supported, and that otherwise the features can be queried per-format (internal issue 1273). * Clarified interactions of `VK_EXT_external_memory_host` with host cache management commands and structures flink:vkMapMemory, flink:vkFlushMappedMemoryRanges, slink:VkMappedMemoryRange, and flink:vkUnmapMemory using the new glossary term "`Host Mapped Device Memory`" (internal issue 1385). * Update the language for flink:vkCreateViSurfaceNN.txt describing the pname:currentExtent of a VI surface to more accurately reflect current capabilities, replacing "`undefined`" with more explicit behavior (internal issue 1410). New Extensions: * `VK_EXT_calibrated_timestamps` * `VK_EXT_image_drm_format_modifier` (this extension was previously disabled in vk.xml, and has now been enabled after some changes to fix performance issues). * `VK_EXT_pci_bus_info` * `VK_EXT_transform_feedback` * `VK_GOOGLE_hlsl_functionality1`, exposing support for `SPV_GOOGLE_hlsl_functionality1`. * `VK_GOOGLE_decorate_string`, exposing support for `SPV_GOOGLE_decorate_string`. |
||
Jon Leech
|
911a764694 |
Change log for October 7, 2018 Vulkan 1.1.87 spec update:
* 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>>` |
||
Jon Leech
|
7ea62a02a9 |
Change log for September 29, 2018 Vulkan 1.1.86 spec update:
* Update release number to 86. Internal Issues: * Add new <<resources-image-creation-limits, Image Creation Limits>> section and reference that from valid usage statements, reducing combinatorial complexity of extension-dependent VUs. Also fixes some underspecified limits (such as pname:maxMipLevels) in the VUs for slink:VkImageCreateInfo when slink:VkExternalMemoryImageCreateInfo::pname:externalMemoryHandles contains multiple bits, and fixes incorrectly (and underspecified) limits when an Android external format is used (internal issue 1370). * Remove unused "`Fragment Area Granularity`" glossary entry accidentally introduced in the 1.1.85 update. New Extensions: * `VK_KHR_driver_properties` * `VK_KHR_shader_atomic_int64` * The specification sources contain text for another extension, `VK_EXT_image_drm_format_modifier`, but this extension is not yet complete, and is marked disabled in `vk.xml`. The extension will be enabled, and become part of the spec, only when the authors decide it is ready. |
||
Jon Leech
|
9858c1e89e |
Change log for September 19, 2018 Vulkan 1.1.85 spec update:
* Update release number to 85. Public Issues: * Add self-dependency ename:VK_DEPENDENCY_BY_REGION_BIT valid usage statements for slink:VkSubpassDependency(public pull request 778). * Apply fix from pull request 742 to slink:VkSubpassDependency and slink:VkSubpassDependency2 (public pull request 779). * Specify the units of slink:VkBufferImageCopy::pname:bufferRowLength and pname:bufferImageHeight as texels (public pull request 781). * Better specify promoted parameter mapping in the `<<VK_KHR_create_renderpass2>>` appendix (public pull request 782). Internal Issues: * Only include the <<fundamentals-validusage-versions, Valid Usage for Newer Core Versions>> section in Vulkan 1.1 or later (internal issue 1381). Other Issues: * Clean up redundant valid usage language for the `VK_ANDROID_external_memory_android_hardware_buffer` extension interaction with slink:VkImageCreateInfo. * Fix error in a flag name within valid usage statements for slink:VkMemoryAllocateInfo. * Clarify that memory types are not totally ordered in slink:VkPhysicalDeviceMemoryProperties. * For slink:VkWriteDescriptorSetInlineUniformBlockEXT, set structextends="VkWriteDescriptorSet" in `vk.xml`, and make slink:VkDescriptorSetLayoutBindingFlagsCreateInfoEXT::pname:pBindingFlags optional. * Add documentation of 'provisional' XML attribute to registry.txt. New Extensions: * `VK_NV_compute_shader_derivatives` * `VK_NV_corner_sampled_image` * `VK_NV_fragment_shader_barycentric` * `VK_NV_mesh_shader` * `VK_NV_representative_fragment_test` * `VK_NV_scissor_exclusive` * `VK_NV_shader_image_footprint` * `VK_NV_shading_rate_image` * `VK_NVX_raytracing` |
||
Jon Leech
|
adadfce8a3 |
Change log for September 8, 2018 Vulkan 1.1.84 spec update:
* Update release number to 84. Public Issues: * Fix code sample in the `<<VK_EXT_debug_utils>>` extension (public issue 751). * Fix misleading comment in `vk.xml` for slink:VkDescriptorBufferInfo::pname:buffer (public pull request 762). * Fix formatting of deprecation attributes in schema doc (public pull request 767). * Change `can` to `may` in the description of elink:VkSparseImageFormatFlagBits, which are return values from queries (public pull request 768). * Prettify generated contact list in extension appendices, adding logos and a New Issue link (public pull request 770). * Enable sRGB conversion based on the image view format, not the image format, in the <<textures-format-conversion, Format Conversion>> section (public pull request 773). * Fix typo in equation in the <<primsrast-lines-basic, Basic Line Segment Rasterization>> section (public pull request 780). * Fix special characters in GitHub contacts links (public pull request 783). * Make clean_pdf target remove pdf folder (public pull request 784). * Fix styleguide bad markup of block continuation (public pull request 792). Other Issues: * Allow a zero vertex attribute divisor in the `<<VK_EXT_vertex_attribute_divisor>>` extension, exposed via the slink:VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT feature. * Add missing `structextends="VkDeviceCreateInfo"` to slink:VkPhysicalDeviceShaderDrawParameterFeatures and slink:VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT. New Extensions: * `VK_KHR_memory_model` * `VK_EXT_astc_decode_mode` * `VK_EXT_inline_uniform_block` |
||
Petr Kraus
|
56561f2689 | Clean pdf folder on make clean | ||
Jon Leech
|
dd9919749a |
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. |
||
Jon Leech
|
ff0c233908 |
Change log for July 30, 2018 Vulkan 1.1.82 spec update:
* 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` |
||
Jon Leech
|
6377124f37 |
Change log for July 23, 2018 Vulkan 1.1.81 spec update:
* Update release number to 81. Public Issues: * Fix missing "`valid`" phrasing in some obscure cases (public pull request 605). * Replace improper use of cannot: referring to the implementation in the description of the <<features-limits-maxUpdateAfterBindDescriptorsInAllPools, pname:maxUpdateAfterBindDescriptorsInAllPools>> limit (public pull request 738). * Reorder description of bits in elink:VkPipelineStageFlagBits and the <<synchronization-pipeline-stages-supported, Supported pipeline stage flags>> table to match their definition order (public pull request 740). * Add description of ename:VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT to elink:VkBufferUsageFlagBits (public pull request 741). * Fix value usage statement for slink:VkSubpassDependency stage mask parameters (public pull request 742). * Fix visible markup in registry schema document (public pull request #745). Internal Issues: * Make the <<geometry-invocations, geometry shader invocation description>> and <<shaders-geometry-execution, Geometry Shader Execution>> descriptions consistent with other pipeline stages (internal issue 1325). * Mark the `VK_NV_glsl_shader` extension as deprecated. * Adjust the per-instance vertex attribute offset formula specified by `VK_EXT_vertex_attribute_divisor` for slink:VkVertexInputBindingDivisorDescriptionEXT so that the interaction between pname:firstInstance and pname:divisor matches the OpenGL convention (internal issue 1333). |
||
Jon Leech
|
831e2d4525 |
Change log for July 7, 2018 Vulkan 1.1.80 spec update:
* Update release number to 80. Public Issues: * Remove unused "`API Order`" term from glossary (public issue 657). * Dynamically generate the extension appendix includes based on information in `vk.xml`, including new metadata tags describing deprecated, obsoleted, and promoted extensions (public pull request 690). Internal Issues: * Add valid usage statements to flink:vkCmdBindDescriptorSets to keep offsets + range less than or equal to the buffer size (internal issue 1174). New Extensions: * `VK_EXT_conditional_render` * `VK_KHR_create_renderpass2` (public issue 736) * `VK_KHR_8bit_storage` (public issue 737) |
||
Jon Leech
|
ff9357a4ba |
Change log for July 1, 2018 Vulkan 1.1.79 spec update:
* Update release number to 79. Public Issues: * Add a note to the <<features-required-format-support, Required Format Support>> section clarifying that the required formats don't depend on the used flags (public issue 671). * Add a valid usage statement for flink:vkUpdateDescriptors that was previously described for slink:VkImageSubresourceRange, but not as a valid usage statement (public issue 713). * Modify implicit valid usage generator script to not emit 'must: not be 0' for a parameter that is a pointer to a flags field, such as pname:pPeerMemoryFeatures (public issue 729). Internal Issues: * Add definitions of "`obsoleted`" and "`deprecated`", and modify the definition of "`promoted`" in the <<glossary, Glossary>> (internal issue 988). * Add language for integer texel output conversions (the conversion is undefined) to the <<textures-output-format-conversion]] Texel Output Format Conversion>> section. Simplify and clarify the floating-point conversion language in the <<fundamentals-general, General Requirements>> section and the new <<fundamentals-fp-conversion, Floating-Point Format Conversions>> section, and remove obsolete language in the format-specific floating-point sections (internal issue 1275). * Add the elink:VkVendorId enumerated type to the Vulkan API / XML / header, so reserved Khronos vendor IDs can be referred to symbolically by clients. Note that only Khronos vendor IDs (e.g. non-PCI vendor IDs) are defined (internal issue 1299). * Fix typo in the <<fig-non-strict-lines, Non strict lines>> table (internal issue 1315). * Clean up and simplify the <<features-formats-requiring-sampler-ycbcr-conversion, YCbCr format properties>> table and use symbols consistently with other tables. Add a column for the number of planes. * Add code:Float16 to the <<spirvenv-capabilities-table, List of optional SPIR-V capabilities>> for the `VK_AMD_gpu_shader_half_float` extension. |
||
Jon Leech
|
9582bcb54e | Minor build fixes. | ||
Jon Leech
|
933a3a3c4a |
Change log for June 18, 2018 Vulkan 1.1.78 spec update:
* 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). |
||
Jon Leech
|
0d5f92c7fa |
Change log for June 10, 2018 Vulkan 1.1.77 spec update:
* 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. |
||
Jon Leech
|
ee13fc355f |
Change log for May 25, 2018 Vulkan 1.1.76 spec update:
* Update release number to 76. Internal Issues: * Add an exception clause to the license on `vk.xml`, enabling its use with GPL-based projects (internal issue 1017). * Remove the generated `vulkan_ext.[ch]` files, which are no longer supported. Add `src/ext_loader/README.md` explaining why, and update files in `xml/` to not generate them by default (internal issue 1268) Other Issues: * Fix typos in valid usage statements for the ftext:vkDrawIndexedIndirectCount* commands, replacing sizeof(VkDrawIndirectComment) with sizeof(VkDrawIndexedIndirectCommand). * Modify the <<spirvenv-module-validation, Validation Rules within a Module>> section to require code:NonReadable or code:NonWriteable in SPIR-V code for images with an image format of code:Unknown if one of the requisite code:shaderImageReadWithoutFormat or code:shaderImageWriteWithoutFormat features is disabled. New Extensions: * `VK_KHR_get_display_properties2` * `VK_KHR_draw_indirect_count` |
||
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. |
||
Jon Leech
|
c51545d33f |
Change log for April 21, 2018 Vulkan 1.1.74 spec update:
* Update release number to 74. Github Issues: * Clarify which buffer locations are accessed in flink:vkCmdCopyBufferToImage valid usage statements (public issue 676). * Refine description of <<extended-functionality-extensions-dependencies, extension dependencies>>, related NOTE in the <<extended-functionality-extensions, Extensions>> section, and "`Required Extensions`" glossary term (public pull request 693). * Add support for specifying required Vulkan core version in `vk.xml` and the extension metadoc generator (public issue 696). * Update .gitignore for directory reorganization (public pull request 699). * Fix typo (public pull request 703). Internal Issues: * Update valid usage of slink:VkClearRect::pname:layerCount (internal issue 1241). Other Issues: * Fix typo in <<NV_geometry_shader_passthrough>> issues list. |
||
Jon Leech
|
5300d9f05e |
Change log for April 15, 2018 Vulkan 1.1.73 spec update:
* 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: |
||
Jon Leech
|
e1c0e426f3 |
Fix Makefile PATCHVERSION to 72, and finish cleaning up after the
dirtree reorganization, changing paths in build scripts and other spec-adjacent material. |
||
Jon Leech
|
9a8314cd41 |
Restructure the repository to put the specification Makefile and
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). |