1// Copyright 2022-2023 The Khronos Group Inc. 2// 3// SPDX-License-Identifier: CC-BY-4.0 4 5include::{generated}/meta/{refprefix}VK_KHR_maintenance5.adoc[] 6 7=== Other Extension Metadata 8 9*Last Modified Date*:: 10 2023-05-02 11 12*Interactions and External Dependencies*:: 13 14*Contributors*:: 15 - Stu Smith, AMD 16 - Tobias Hector, AMD 17 - Shahbaz Youssefi, Google 18 - Slawomir Cygan, Intel 19 - Lionel Landwerlin, Intel 20 - James Fitzpatrick, Imagination Technologies 21 - Andrew Garrard, Imagination Technologies 22 - Ralph Potter, Samsung 23 - Pan Gao, Huawei 24 - Jan-Harald Fredriksen, ARM 25 - Jon Leech, Khronos 26 - Mike Blumenkrantz, Valve 27 28=== Description 29 30`VK_KHR_maintenance5` adds a collection of minor features, none of which 31would warrant an entire extension of their own. 32 33The new features are as follows: 34 35 * A new ename:VK_FORMAT_A1B5G5R5_UNORM_PACK16_KHR format 36 * A new ename:VK_FORMAT_A8_UNORM_KHR format 37 * A property to indicate that multisample coverage operations are 38 performed after sample counting in EarlyFragmentTests mode 39 * Relax VkBufferView creation requirements by allowing subsets of the 40 associated VkBuffer usage using sname:VkBufferUsageFlags2CreateInfoKHR 41 * A new entry point flink:vkCmdBindIndexBuffer2KHR, allowing a range of 42 memory to be bound as an index buffer 43 * flink:vkGetDeviceProcAddr must return code:NULL for supported core 44 functions beyond the version requested by the application. 45 * A property to indicate that the sample mask test is performed after 46 sample counting in EarlyFragmentTests mode 47 * `vkCmdBindVertexBuffers2` now supports using `VK_WHOLE_SIZE` in the 48 `pSizes` parameter. 49 * A default size of 1.0 is used if code:PointSize is not written 50 * Shader modules are deprecated - applications can now pass 51 slink:VkShaderModuleCreateInfo as a chained struct to pipeline creation 52 via slink:VkPipelineShaderStageCreateInfo 53 * A function flink:vkGetRenderingAreaGranularityKHR to query the optimal 54 render area for a dynamic rendering instance. 55 * A property to indicate that depth/stencil texturing operations with 56 ename:VK_COMPONENT_SWIZZLE_ONE have defined behavior 57 * Add flink:vkGetImageSubresourceLayout2KHR and a new function 58 flink:vkGetDeviceImageSubresourceLayoutKHR to allow the application to 59 query the image memory layout without having to create an image object 60 and query it. 61 * Allow ename:VK_REMAINING_ARRAY_LAYERS as the pname:layerCount member of 62 slink:VkImageSubresourceLayers 63 * Adds stronger guarantees for propagation of ename:VK_ERROR_DEVICE_LOST 64 return values 65 * A property to indicate whether code:PointSize controls the final 66 rasterization of polygons if <<primsrast-polygonmode, polygon mode>> is 67 ename:VK_POLYGON_MODE_POINT 68 * Two properties to indicate the non-strict line rasterization algorithm 69 used 70 * Two new flags words elink:VkPipelineCreateFlagBits2KHR and 71 elink:VkBufferUsageFlagBits2KHR 72 * Physical-device-level functions can now be called with any value in the 73 valid range for a type beyond the defined enumerants, such that 74 applications can avoid checking individual features, extensions, or 75 versions before querying supported properties of a particular enumerant. 76 * Clarification that copies between images of any type are allowed, 77 treating 1D images as 2D images with a height of 1. 78 79include::{generated}/interfaces/VK_KHR_maintenance5.adoc[] 80 81=== Issues 82 83None. 84 85=== Version History 86 87 * Revision 1, 2022-12-12 (Stu Smith) 88 ** Initial revision 89