diff --git a/include/vulkan/vulkan.hpp b/include/vulkan/vulkan.hpp index 25e746f..a71d25b 100644 --- a/include/vulkan/vulkan.hpp +++ b/include/vulkan/vulkan.hpp @@ -94,7 +94,7 @@ extern "C" __declspec( dllimport ) FARPROC __stdcall GetProcAddress( HINSTANCE h #endif -static_assert( VK_HEADER_VERSION == 165 , "Wrong VK_HEADER_VERSION!" ); +static_assert( VK_HEADER_VERSION == 166 , "Wrong VK_HEADER_VERSION!" ); // 32-bit vulkan is not typesafe for handles, so don't allow copy constructors on this platform by default. // To enable this feature on 32-bit platforms please define VULKAN_HPP_TYPESAFE_CONVERSION @@ -15235,14 +15235,14 @@ namespace VULKAN_HPP_NAMESPACE #if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE) AccelerationStructureBuildGeometryInfoKHR( VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_, VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsKHR flags_, VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR mode_, VULKAN_HPP_NAMESPACE::AccelerationStructureKHR srcAccelerationStructure_, VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dstAccelerationStructure_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries const & geometries_, VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries const & pGeometries_ = {}, VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR scratchData_ = {} ) - : type( type_ ), flags( flags_ ), mode( mode_ ), srcAccelerationStructure( srcAccelerationStructure_ ), dstAccelerationStructure( dstAccelerationStructure_ ), geometryCount( static_cast( geometries_.size() ) ), pGeometries( geometries_.data() ), ppGeometries( pGeometries_.data() ), scratchData( scratchData_ ) + : type( type_ ), flags( flags_ ), mode( mode_ ), srcAccelerationStructure( srcAccelerationStructure_ ), dstAccelerationStructure( dstAccelerationStructure_ ), geometryCount( static_cast( !geometries_.empty() ? geometries_.size() : pGeometries_.size() ) ), pGeometries( geometries_.data() ), ppGeometries( pGeometries_.data() ), scratchData( scratchData_ ) { #ifdef VULKAN_HPP_NO_EXCEPTIONS - VULKAN_HPP_ASSERT( geometries_.empty() || pGeometries_.empty() || ( geometries_.size() == pGeometries_.size() ) ); + VULKAN_HPP_ASSERT( ( !geometries_.empty() + !pGeometries_.empty() ) == 1 ); #else - if ( !geometries_.empty() && !pGeometries_.empty() && ( geometries_.size() != pGeometries_.size() ) ) + if ( ( !geometries_.empty() + !pGeometries_.empty() ) != 1 ) { - throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::AccelerationStructureBuildGeometryInfoKHR::AccelerationStructureBuildGeometryInfoKHR: !geometries_.empty() && !pGeometries_.empty() && ( geometries_.size() != pGeometries_.size() )" ); + throw LogicError( VULKAN_HPP_NAMESPACE_STRING "::AccelerationStructureBuildGeometryInfoKHR::AccelerationStructureBuildGeometryInfoKHR: ( !geometries_.empty() + !pGeometries_.empty() ) != 1" ); } #endif /*VULKAN_HPP_NO_EXCEPTIONS*/ } diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h index 7295571..b2a6ab2 100644 --- a/include/vulkan/vulkan_core.h +++ b/include/vulkan/vulkan_core.h @@ -43,7 +43,7 @@ extern "C" { #define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0)// Patch version should always be set to 0 // Version of this file -#define VK_HEADER_VERSION 165 +#define VK_HEADER_VERSION 166 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_VERSION(1, 2, VK_HEADER_VERSION) diff --git a/registry/validusage.json b/registry/validusage.json index 19d65e5..6d77709 100644 --- a/registry/validusage.json +++ b/registry/validusage.json @@ -1,9 +1,9 @@ { "version info": { "schema version": 2, - "api version": "1.2.165", - "comment": "from git branch: github-main commit: ffbc67c499b92e864ad51275e606468975b5e397", - "date": "2020-12-14 05:44:28Z" + "api version": "1.2.166", + "comment": "from git branch: github-main commit: d7aab06b9be7a245945ec3f9cee772c27fbadc26", + "date": "2021-01-04 03:26:33Z" }, "validation": { "vkGetInstanceProcAddr": { @@ -10673,6 +10673,14 @@ { "vuid": "VUID-VkImageCreateInfo-format-01577", "text": " If format is not a multi-planar format, and flags does not include VK_IMAGE_CREATE_ALIAS_BIT, flags must not contain VK_IMAGE_CREATE_DISJOINT_BIT" + }, + { + "vuid": "VUID-VkImageCreateInfo-format-04712", + "text": " If format has a _422 or _420 suffix, width must be a multiple of 2" + }, + { + "vuid": "VUID-VkImageCreateInfo-format-04713", + "text": " If format has a _420 suffix, height must be a multiple of 2" } ], "(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)+(VK_EXT_ycbcr_image_arrays)": [ @@ -11324,6 +11332,14 @@ "vuid": "VUID-VkImageViewCreateInfo-image-01762", "text": " If image was not created with the VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT flag, or if the format of the image is a multi-planar format and if subresourceRange.aspectMask is VK_IMAGE_ASPECT_COLOR_BIT, format must be identical to the format used to create image" }, + { + "vuid": "VUID-VkImageViewCreateInfo-format-04714", + "text": " If format has a _422 or _420 suffix then image must have been created with a width that is a multiple of 2" + }, + { + "vuid": "VUID-VkImageViewCreateInfo-format-04715", + "text": " If format has a _420 suffix then image must have been created with a height that is a multiple of 2" + }, { "vuid": "VUID-VkImageViewCreateInfo-pNext-01970", "text": " If the pNext chain includes a VkSamplerYcbcrConversionInfo structure with a conversion value other than VK_NULL_HANDLE, all members of components must have the identity swizzle" @@ -13204,6 +13220,10 @@ "vuid": "VUID-VkSamplerCreateInfo-addressModeU-01078", "text": " If any of addressModeU, addressModeV or addressModeW are VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER, borderColor must be a valid VkBorderColor value" }, + { + "vuid": "VUID-VkSamplerCreateInfo-addressModeU-01079", + "text": " If samplerMirrorClampToEdge is not enabled, and if the VK_KHR_sampler_mirror_clamp_to_edge extension is not enabled, addressModeU, addressModeV and addressModeW must not be VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE" + }, { "vuid": "VUID-VkSamplerCreateInfo-compareEnable-01080", "text": " If compareEnable is VK_TRUE, compareOp must be a valid VkCompareOp value" @@ -13271,12 +13291,6 @@ "text": " The sampler reduction mode must be set to VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE if sampler {YCbCr} conversion is enabled" } ], - "(VK_VERSION_1_2,VK_KHR_sampler_mirror_clamp_to_edge)": [ - { - "vuid": "VUID-VkSamplerCreateInfo-addressModeU-01079", - "text": " If ifdef::VK_VERSION_1_2[samplerMirrorClampToEdge is not enabled, and if] the VK_KHR_sampler_mirror_clamp_to_edge extension is not enabled, addressModeU, addressModeV and addressModeW must not be VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE" - } - ], "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ { "vuid": "VUID-VkSamplerCreateInfo-magFilter-01081", @@ -14902,7 +14916,11 @@ }, { "vuid": "VUID-VkWriteDescriptorSetAccelerationStructureKHR-pAccelerationStructures-03579", - "text": " Each acceleration structure in pAccelerationStructures must have been created with VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR or VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR and built with VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR" + "text": " Each acceleration structure in pAccelerationStructures must have been created with a type of VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR or VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR" + }, + { + "vuid": "VUID-VkWriteDescriptorSetAccelerationStructureKHR-pAccelerationStructures-03580", + "text": " If the nullDescriptor feature is not enabled, each member of pAccelerationStructures must not be VK_NULL_HANDLE" }, { "vuid": "VUID-VkWriteDescriptorSetAccelerationStructureKHR-sType-sType", @@ -14916,12 +14934,6 @@ "vuid": "VUID-VkWriteDescriptorSetAccelerationStructureKHR-accelerationStructureCount-arraylength", "text": " accelerationStructureCount must be greater than 0" } - ], - "(VK_NV_ray_tracing,VK_KHR_acceleration_structure)+(VK_KHR_acceleration_structure)": [ - { - "vuid": "VUID-VkWriteDescriptorSetAccelerationStructureKHR-pAccelerationStructures-03580", - "text": " If the nullDescriptor feature is not enabled, each member of pAccelerationStructures must not be VK_NULL_HANDLE" - } ] }, "VkWriteDescriptorSetAccelerationStructureNV": { @@ -26053,10 +26065,6 @@ { "vuid": "VUID-VkPipelineViewportShadingRateImageStateCreateInfoNV-sType-sType", "text": " sType must be VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV" - }, - { - "vuid": "VUID-VkPipelineViewportShadingRateImageStateCreateInfoNV-viewportCount-arraylength", - "text": " viewportCount must be greater than 0" } ] }, @@ -33302,10 +33310,6 @@ }, "VkAccelerationStructureGeometryTrianglesDataKHR": { "(VK_NV_ray_tracing,VK_KHR_ray_tracing_pipeline,VK_KHR_acceleration_structure)+(VK_KHR_acceleration_structure,VK_NV_ray_tracing)+(VK_KHR_acceleration_structure)": [ - { - "vuid": "VUID-VkAccelerationStructureGeometryTrianglesDataKHR-maxVertex-03655", - "text": " maxVertex must be greater than 0" - }, { "vuid": "VUID-VkAccelerationStructureGeometryTrianglesDataKHR-vertexStride-03735", "text": " vertexStride must be a multiple of the size in bytes of the smallest component of vertexFormat" @@ -36884,6 +36888,10 @@ "vuid": "VUID-StandaloneSpirv-Offset-04692", "text": " Output variables, blocks or block members decorated with Offset must only contain base types that have components that are either 32-bit or 64-bit in size" }, + { + "vuid": "VUID-StandaloneSpirv-Offset-04716", + "text": " Only variables or block members in the output interface decorated with Offset can be captured for transform feedback, and those variables or block members must also be decorated with XfbBuffer and XfbStride, or inherit XfbBuffer and XfbStride decorations from a block containing them" + }, { "vuid": "VUID-StandaloneSpirv-XfbBuffer-04693", "text": " All variables or block members in the output interface of the entry point being compiled decorated with a specific XfbBuffer value must all be decorated with identical XfbStride values" diff --git a/registry/vk.xml b/registry/vk.xml index 084823b..2123ee0 100644 --- a/registry/vk.xml +++ b/registry/vk.xml @@ -137,7 +137,7 @@ branch of the member gitlab server. // Vulkan 1.2 version number #define VK_API_VERSION_1_2 VK_MAKE_VERSION(1, 2, 0)// Patch version should always be set to 0 // Version of this file -#define VK_HEADER_VERSION 165 +#define VK_HEADER_VERSION 166 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_VERSION(1, 2, VK_HEADER_VERSION) @@ -3710,7 +3710,7 @@ typedef void CAMetalLayer; VkStructureType sType const void* pNext VkBool32 shadingRateImageEnable - uint32_t viewportCount + uint32_t viewportCount const VkShadingRatePaletteNV* pShadingRatePalettes