Vulkan-Docs/appendices/VK_EXT_scalar_block_layout.txt

44 lines
1015 B
Plaintext
Raw Normal View History

// Copyright (c) 2017-2019 Khronos Group. This work is licensed under a
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`
2018-11-18 10:55:14 +00:00
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
include::meta/VK_EXT_scalar_block_layout.txt[]
*Last Modified Date*::
2018-11-14
*Contributors*::
- Jeff Bolz
- Jan-Harald Fredriksen
- Graeme Leese
- Jason Ekstrand
- John Kessenich
=== Short Description
Enables C-like structure layout for SPIR-V blocks.
=== Description
This extension modifies the alignment rules for uniform buffers, storage
buffers and push constants, allowing non-scalar types to be aligned solely
based on the size of their components, without additional requirements.
=== New Enum Constants
* Extending elink:VkStructureType:
** ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT
=== New Structures
* slink:VkPhysicalDeviceScalarBlockLayoutFeaturesEXT
=== Issues
None.
=== Version History
* Revision 1, 2018-11-14 (Tobias Hector)
- Initial draft