Skip to content

Commit

Permalink
Updated to Vulkan headers 1.3.276
Browse files Browse the repository at this point in the history
Adds support for:
- VK_KHR_dynamic_rendering_local_read
- VK_KHR_shader_quad_control
- VK_KHR_shader_subgroup_rotate
- VK_KHR_shader_maximal_reconvergence
- VK_KHR_shader_float_controls2
- VK_KHR_index_type_uint8
- VK_KHR_line_rasterization
- VK_KHR_shader_expect_assume
  • Loading branch information
SaschaWillems committed Jan 26, 2024
1 parent 36f0a40 commit 82d21b0
Show file tree
Hide file tree
Showing 4 changed files with 97 additions and 2 deletions.
2 changes: 1 addition & 1 deletion Vulkan-Headers
Submodule Vulkan-Headers updated 52 files
+4 −4 .reuse/dep5
+1 −1 include/vk_video/vulkan_video_codec_h264std.h
+1 −1 include/vk_video/vulkan_video_codec_h264std_decode.h
+1 −1 include/vk_video/vulkan_video_codec_h264std_encode.h
+1 −1 include/vk_video/vulkan_video_codec_h265std.h
+1 −1 include/vk_video/vulkan_video_codec_h265std_decode.h
+1 −1 include/vk_video/vulkan_video_codec_h265std_encode.h
+1 −1 include/vk_video/vulkan_video_codecs_common.h
+1 −1 include/vulkan/vk_platform.h
+74 −13 include/vulkan/vulkan.cppm
+1 −1 include/vulkan/vulkan.h
+321 −70 include/vulkan/vulkan.hpp
+1 −1 include/vulkan/vulkan_android.h
+1 −1 include/vulkan/vulkan_beta.h
+209 −52 include/vulkan/vulkan_core.h
+1 −1 include/vulkan/vulkan_directfb.h
+34 −17 include/vulkan/vulkan_enums.hpp
+76 −25 include/vulkan/vulkan_extension_inspection.hpp
+1 −1 include/vulkan/vulkan_format_traits.hpp
+1 −1 include/vulkan/vulkan_fuchsia.h
+5,232 −2,458 include/vulkan/vulkan_funcs.hpp
+1 −1 include/vulkan/vulkan_ggp.h
+312 −263 include/vulkan/vulkan_handles.hpp
+146 −29 include/vulkan/vulkan_hash.hpp
+18 −1 include/vulkan/vulkan_hpp_macros.hpp
+1 −1 include/vulkan/vulkan_ios.h
+1 −1 include/vulkan/vulkan_macos.h
+1 −1 include/vulkan/vulkan_metal.h
+4,050 −2,681 include/vulkan/vulkan_raii.hpp
+1 −1 include/vulkan/vulkan_screen.h
+8 −1 include/vulkan/vulkan_shared.hpp
+108 −35 include/vulkan/vulkan_static_assertions.hpp
+997 −374 include/vulkan/vulkan_structs.hpp
+32 −23 include/vulkan/vulkan_to_string.hpp
+1 −1 include/vulkan/vulkan_vi.h
+1 −1 include/vulkan/vulkan_wayland.h
+1 −1 include/vulkan/vulkan_win32.h
+1 −1 include/vulkan/vulkan_xcb.h
+1 −1 include/vulkan/vulkan_xlib.h
+1 −1 include/vulkan/vulkan_xlib_xrandr.h
+1 −1 registry/apiconventions.py
+1 −1 registry/cgenerator.py
+1 −1 registry/generator.py
+1 −1 registry/parse_dependency.py
+153 −62 registry/profiles/VP_KHR_roadmap.json
+1 −1 registry/reg.py
+1 −1 registry/spec_tools/conventions.py
+1 −1 registry/spec_tools/util.py
+1,050 −585 registry/validusage.json
+1 −1 registry/video.xml
+292 −117 registry/vk.xml
+1 −1 registry/vkconventions.py
87 changes: 87 additions & 0 deletions VulkanDeviceInfoExtensions.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -920,6 +920,15 @@ void VulkanDeviceInfoExtensions::readPhysicalProperties_KHR() {
pushProperty2(extension, "supportsNonZeroFirstInstance", QVariant(bool(extProps->supportsNonZeroFirstInstance)));
delete extProps;
}
if (extensionSupported("VK_KHR_line_rasterization")) {
const char* extension("VK_KHR_line_rasterization");
VkPhysicalDeviceLineRasterizationPropertiesKHR* extProps = new VkPhysicalDeviceLineRasterizationPropertiesKHR{};
extProps->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_KHR;
deviceProps2 = initDeviceProperties2(extProps);
vulkanContext.vkGetPhysicalDeviceProperties2KHR(device, &deviceProps2);
pushProperty2(extension, "lineSubPixelPrecisionBits", QVariant(extProps->lineSubPixelPrecisionBits));
delete extProps;
}
if (extensionSupported("VK_KHR_maintenance6")) {
const char* extension("VK_KHR_maintenance6");
VkPhysicalDeviceMaintenance6PropertiesKHR* extProps = new VkPhysicalDeviceMaintenance6PropertiesKHR{};
Expand Down Expand Up @@ -2403,6 +2412,24 @@ void VulkanDeviceInfoExtensions::readPhysicalFeatures_KHR() {
pushFeature2(extension, "attachmentFragmentShadingRate", extFeatures->attachmentFragmentShadingRate);
delete extFeatures;
}
if (extensionSupported("VK_KHR_dynamic_rendering_local_read")) {
const char* extension("VK_KHR_dynamic_rendering_local_read");
VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR* extFeatures = new VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR{};
extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_LOCAL_READ_FEATURES_KHR;
deviceFeatures2 = initDeviceFeatures2(extFeatures);
vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
pushFeature2(extension, "dynamicRenderingLocalRead", extFeatures->dynamicRenderingLocalRead);
delete extFeatures;
}
if (extensionSupported("VK_KHR_shader_quad_control")) {
const char* extension("VK_KHR_shader_quad_control");
VkPhysicalDeviceShaderQuadControlFeaturesKHR* extFeatures = new VkPhysicalDeviceShaderQuadControlFeaturesKHR{};
extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_QUAD_CONTROL_FEATURES_KHR;
deviceFeatures2 = initDeviceFeatures2(extFeatures);
vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
pushFeature2(extension, "shaderQuadControl", extFeatures->shaderQuadControl);
delete extFeatures;
}
if (extensionSupported("VK_KHR_separate_depth_stencil_layouts")) {
const char* extension("VK_KHR_separate_depth_stencil_layouts");
VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures* extFeatures = new VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures{};
Expand Down Expand Up @@ -2535,6 +2562,25 @@ void VulkanDeviceInfoExtensions::readPhysicalFeatures_KHR() {
pushFeature2(extension, "maintenance4", extFeatures->maintenance4);
delete extFeatures;
}
if (extensionSupported("VK_KHR_shader_subgroup_rotate")) {
const char* extension("VK_KHR_shader_subgroup_rotate");
VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR* extFeatures = new VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR{};
extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_ROTATE_FEATURES_KHR;
deviceFeatures2 = initDeviceFeatures2(extFeatures);
vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
pushFeature2(extension, "shaderSubgroupRotate", extFeatures->shaderSubgroupRotate);
pushFeature2(extension, "shaderSubgroupRotateClustered", extFeatures->shaderSubgroupRotateClustered);
delete extFeatures;
}
if (extensionSupported("VK_KHR_shader_maximal_reconvergence")) {
const char* extension("VK_KHR_shader_maximal_reconvergence");
VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR* extFeatures = new VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR{};
extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MAXIMAL_RECONVERGENCE_FEATURES_KHR;
deviceFeatures2 = initDeviceFeatures2(extFeatures);
vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
pushFeature2(extension, "shaderMaximalReconvergence", extFeatures->shaderMaximalReconvergence);
delete extFeatures;
}
if (extensionSupported("VK_KHR_maintenance5")) {
const char* extension("VK_KHR_maintenance5");
VkPhysicalDeviceMaintenance5FeaturesKHR* extFeatures = new VkPhysicalDeviceMaintenance5FeaturesKHR{};
Expand Down Expand Up @@ -2582,6 +2628,47 @@ void VulkanDeviceInfoExtensions::readPhysicalFeatures_KHR() {
pushFeature2(extension, "vertexAttributeInstanceRateZeroDivisor", extFeatures->vertexAttributeInstanceRateZeroDivisor);
delete extFeatures;
}
if (extensionSupported("VK_KHR_shader_float_controls2")) {
const char* extension("VK_KHR_shader_float_controls2");
VkPhysicalDeviceShaderFloatControls2FeaturesKHR* extFeatures = new VkPhysicalDeviceShaderFloatControls2FeaturesKHR{};
extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT_CONTROLS_2_FEATURES_KHR;
deviceFeatures2 = initDeviceFeatures2(extFeatures);
vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
pushFeature2(extension, "shaderFloatControls2", extFeatures->shaderFloatControls2);
delete extFeatures;
}
if (extensionSupported("VK_KHR_index_type_uint8")) {
const char* extension("VK_KHR_index_type_uint8");
VkPhysicalDeviceIndexTypeUint8FeaturesKHR* extFeatures = new VkPhysicalDeviceIndexTypeUint8FeaturesKHR{};
extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_KHR;
deviceFeatures2 = initDeviceFeatures2(extFeatures);
vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
pushFeature2(extension, "indexTypeUint8", extFeatures->indexTypeUint8);
delete extFeatures;
}
if (extensionSupported("VK_KHR_line_rasterization")) {
const char* extension("VK_KHR_line_rasterization");
VkPhysicalDeviceLineRasterizationFeaturesKHR* extFeatures = new VkPhysicalDeviceLineRasterizationFeaturesKHR{};
extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_KHR;
deviceFeatures2 = initDeviceFeatures2(extFeatures);
vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
pushFeature2(extension, "rectangularLines", extFeatures->rectangularLines);
pushFeature2(extension, "bresenhamLines", extFeatures->bresenhamLines);
pushFeature2(extension, "smoothLines", extFeatures->smoothLines);
pushFeature2(extension, "stippledRectangularLines", extFeatures->stippledRectangularLines);
pushFeature2(extension, "stippledBresenhamLines", extFeatures->stippledBresenhamLines);
pushFeature2(extension, "stippledSmoothLines", extFeatures->stippledSmoothLines);
delete extFeatures;
}
if (extensionSupported("VK_KHR_shader_expect_assume")) {
const char* extension("VK_KHR_shader_expect_assume");
VkPhysicalDeviceShaderExpectAssumeFeaturesKHR* extFeatures = new VkPhysicalDeviceShaderExpectAssumeFeaturesKHR{};
extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EXPECT_ASSUME_FEATURES_KHR;
deviceFeatures2 = initDeviceFeatures2(extFeatures);
vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
pushFeature2(extension, "shaderExpectAssume", extFeatures->shaderExpectAssume);
delete extFeatures;
}
if (extensionSupported("VK_KHR_maintenance6")) {
const char* extension("VK_KHR_maintenance6");
VkPhysicalDeviceMaintenance6FeaturesKHR* extFeatures = new VkPhysicalDeviceMaintenance6FeaturesKHR{};
Expand Down
2 changes: 1 addition & 1 deletion VulkanDeviceInfoExtensions.h
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ class VulkanDeviceInfoExtensions
void readPhysicalFeatures_VALVE();

public:
const uint32_t vkHeaderVersion = 274;
const uint32_t vkHeaderVersion = 276;
std::vector<Feature2> features2;
std::vector<Property2> properties2;
std::vector<VkExtensionProperties> extensions;
Expand Down
8 changes: 8 additions & 0 deletions extensionlist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,8 @@ VK_KHR_timeline_semaphore
VK_KHR_vulkan_memory_model
VK_KHR_shader_terminate_invocation
VK_KHR_fragment_shading_rate
VK_KHR_dynamic_rendering_local_read
VK_KHR_shader_quad_control
VK_KHR_separate_depth_stencil_layouts
VK_KHR_present_wait
VK_KHR_uniform_buffer_standard_layout
Expand All @@ -154,11 +156,17 @@ VK_KHR_zero_initialize_workgroup_memory
VK_KHR_workgroup_memory_explicit_layout
VK_KHR_ray_tracing_maintenance1
VK_KHR_maintenance4
VK_KHR_shader_subgroup_rotate
VK_KHR_shader_maximal_reconvergence
VK_KHR_maintenance5
VK_KHR_ray_tracing_position_fetch
VK_KHR_cooperative_matrix
VK_KHR_video_maintenance1
VK_KHR_vertex_attribute_divisor
VK_KHR_shader_float_controls2
VK_KHR_index_type_uint8
VK_KHR_line_rasterization
VK_KHR_shader_expect_assume
VK_KHR_maintenance6
MSFT
VK_MSFT_layered_driver
Expand Down

0 comments on commit 82d21b0

Please sign in to comment.