| // Copyright 2017-2021 The Khronos Group, Inc. |
| // |
| // SPDX-License-Identifier: CC-BY-4.0 |
| |
| include::{generated}/meta/{refprefix}VK_EXT_scalar_block_layout.txt[] |
| |
| === Other Extension Metadata |
| |
| *Last Modified Date*:: |
| 2018-11-14 |
| *Interactions and External Dependencies*:: |
| - Promoted to Vulkan 1.2 Core |
| *Contributors*:: |
| - Jeff Bolz |
| - Jan-Harald Fredriksen |
| - Graeme Leese |
| - Jason Ekstrand |
| - John Kessenich |
| |
| === Description |
| |
| This extension enables C-like structure layout for SPIR-V blocks. |
| It 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. |
| |
| === Promotion to Vulkan 1.2 |
| |
| Functionality in this extension is included in core Vulkan 1.2, with the EXT |
| suffix omitted. |
| However, if Vulkan 1.2 is supported and this extension is not, the |
| code:scalarBlockLayout capability is optional. |
| The original type, enum and command names are still available as aliases of |
| the core functionality. |
| |
| include::{generated}/interfaces/VK_EXT_scalar_block_layout.txt[] |
| |
| === Version History |
| |
| * Revision 1, 2018-11-14 (Tobias Hector) |
| - Initial draft |