summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Schuchardt <mikes@lunarg.com>2022-09-01 09:31:34 -0700
committerMike Schuchardt <mikes@lunarg.com>2022-09-01 10:49:08 -0700
commit088cfe80472564874bb45fe818e6c2440bf35b80 (patch)
treea243fd22185648a5a87501934945ec79dee66b39
parent77cf67df0795d0bceb51fe6737b4c9aed6694572 (diff)
downloadVulkan-Tools-088cfe80472564874bb45fe818e6c2440bf35b80.tar.gz
Vulkan-Tools-088cfe80472564874bb45fe818e6c2440bf35b80.tar.bz2
Vulkan-Tools-088cfe80472564874bb45fe818e6c2440bf35b80.zip
build: Update to header 1.3.226upstream/1.3.226
- Update known-good - Generate source
-rw-r--r--build-android/vulkan-headers_revision_android2
-rw-r--r--common/vulkan_wrapper.cpp3
-rw-r--r--icd/generated/mock_icd.cpp33
-rw-r--r--icd/generated/mock_icd.h33
-rw-r--r--icd/generated/vk_typemap_helper.h49
-rwxr-xr-xscripts/generate_vulkan_wrapper.py15
-rw-r--r--scripts/known_good.json4
-rw-r--r--vulkaninfo/generated/vulkaninfo.hpp93
8 files changed, 223 insertions, 9 deletions
diff --git a/build-android/vulkan-headers_revision_android b/build-android/vulkan-headers_revision_android
index d94eed38..a5371592 100644
--- a/build-android/vulkan-headers_revision_android
+++ b/build-android/vulkan-headers_revision_android
@@ -1 +1 @@
-v1.3.225
+v1.3.226
diff --git a/common/vulkan_wrapper.cpp b/common/vulkan_wrapper.cpp
index 3e0aefdc..aca5cac3 100644
--- a/common/vulkan_wrapper.cpp
+++ b/common/vulkan_wrapper.cpp
@@ -1085,6 +1085,9 @@ PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureRepl
PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR;
PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR;
PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR;
+PFN_vkCmdDrawMeshTasksEXT vkCmdDrawMeshTasksEXT;
+PFN_vkCmdDrawMeshTasksIndirectEXT vkCmdDrawMeshTasksIndirectEXT;
+PFN_vkCmdDrawMeshTasksIndirectCountEXT vkCmdDrawMeshTasksIndirectCountEXT;
#ifdef VK_USE_PLATFORM_ANDROID_KHR
PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR;
diff --git a/icd/generated/mock_icd.cpp b/icd/generated/mock_icd.cpp
index f07a4ec3..4539afa5 100644
--- a/icd/generated/mock_icd.cpp
+++ b/icd/generated/mock_icd.cpp
@@ -5725,6 +5725,7 @@ static VKAPI_ATTR void VKAPI_CALL GetDescriptorSetHostMappingVALVE(
+
static VKAPI_ATTR void VKAPI_CALL GetShaderModuleIdentifierEXT(
VkDevice device,
VkShaderModule shaderModule,
@@ -5984,6 +5985,38 @@ static VKAPI_ATTR void VKAPI_CALL CmdSetRayTracingPipelineStackSizeKHR(
+static VKAPI_ATTR void VKAPI_CALL CmdDrawMeshTasksEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ)
+{
+//Not a CREATE or DESTROY function
+}
+
+static VKAPI_ATTR void VKAPI_CALL CmdDrawMeshTasksIndirectEXT(
+ VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride)
+{
+//Not a CREATE or DESTROY function
+}
+
+static VKAPI_ATTR void VKAPI_CALL CmdDrawMeshTasksIndirectCountEXT(
+ VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ VkBuffer countBuffer,
+ VkDeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride)
+{
+//Not a CREATE or DESTROY function
+}
+
+
static VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL GetPhysicalDeviceProcAddr(VkInstance instance, const char *funcName) {
// TODO: This function should only care about physical device functions and return nullptr for other functions
diff --git a/icd/generated/mock_icd.h b/icd/generated/mock_icd.h
index 3edf6f17..60cef93f 100644
--- a/icd/generated/mock_icd.h
+++ b/icd/generated/mock_icd.h
@@ -100,7 +100,7 @@ static const std::unordered_map<std::string, uint32_t> device_extension_map = {
{"VK_AMD_shader_explicit_vertex_parameter", 1},
{"VK_EXT_debug_marker", 4},
{"VK_KHR_video_queue", 5},
- {"VK_KHR_video_decode_queue", 5},
+ {"VK_KHR_video_decode_queue", 6},
{"VK_AMD_gcn_shader", 1},
{"VK_NV_dedicated_allocation", 1},
{"VK_EXT_transform_feedback", 1},
@@ -284,7 +284,7 @@ static const std::unordered_map<std::string, uint32_t> device_extension_map = {
{"VK_KHR_present_id", 1},
{"VK_EXT_private_data", 1},
{"VK_EXT_pipeline_creation_cache_control", 3},
- {"VK_KHR_video_encode_queue", 6},
+ {"VK_KHR_video_encode_queue", 7},
{"VK_NV_device_diagnostics_config", 2},
{"VK_QCOM_render_pass_store_ops", 2},
{"VK_EXT_metal_objects", 1},
@@ -296,6 +296,7 @@ static const std::unordered_map<std::string, uint32_t> device_extension_map = {
{"VK_KHR_zero_initialize_workgroup_memory", 1},
{"VK_NV_fragment_shading_rate_enums", 1},
{"VK_NV_ray_tracing_motion_blur", 1},
+ {"VK_EXT_mesh_shader", 1},
{"VK_EXT_ycbcr_2plane_444_formats", 1},
{"VK_EXT_fragment_density_map2", 1},
{"VK_QCOM_rotated_copy_commands", 1},
@@ -335,6 +336,7 @@ static const std::unordered_map<std::string, uint32_t> device_extension_map = {
{"VK_EXT_pageable_device_local_memory", 1},
{"VK_KHR_maintenance4", 2},
{"VK_VALVE_descriptor_set_host_mapping", 1},
+ {"VK_EXT_depth_clamp_zero_one", 1},
{"VK_EXT_non_seamless_cube_map", 1},
{"VK_QCOM_fragment_density_map_offset", 1},
{"VK_NV_linear_color_attachment", 1},
@@ -3578,6 +3580,7 @@ static VKAPI_ATTR void VKAPI_CALL GetDescriptorSetHostMappingVALVE(
+
static VKAPI_ATTR void VKAPI_CALL GetShaderModuleIdentifierEXT(
VkDevice device,
VkShaderModule shaderModule,
@@ -3742,6 +3745,29 @@ static VKAPI_ATTR void VKAPI_CALL CmdSetRayTracingPipelineStackSizeKHR(
uint32_t pipelineStackSize);
+
+static VKAPI_ATTR void VKAPI_CALL CmdDrawMeshTasksEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t groupCountX,
+ uint32_t groupCountY,
+ uint32_t groupCountZ);
+
+static VKAPI_ATTR void VKAPI_CALL CmdDrawMeshTasksIndirectEXT(
+ VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ uint32_t drawCount,
+ uint32_t stride);
+
+static VKAPI_ATTR void VKAPI_CALL CmdDrawMeshTasksIndirectCountEXT(
+ VkCommandBuffer commandBuffer,
+ VkBuffer buffer,
+ VkDeviceSize offset,
+ VkBuffer countBuffer,
+ VkDeviceSize countBufferOffset,
+ uint32_t maxDrawCount,
+ uint32_t stride);
+
// Map of all APIs to be intercepted by this layer
static const std::unordered_map<std::string, void*> name_to_funcptr_map = {
{"vkCreateInstance", (void*)CreateInstance},
@@ -4417,6 +4443,9 @@ static const std::unordered_map<std::string, void*> name_to_funcptr_map = {
{"vkCmdTraceRaysIndirectKHR", (void*)CmdTraceRaysIndirectKHR},
{"vkGetRayTracingShaderGroupStackSizeKHR", (void*)GetRayTracingShaderGroupStackSizeKHR},
{"vkCmdSetRayTracingPipelineStackSizeKHR", (void*)CmdSetRayTracingPipelineStackSizeKHR},
+ {"vkCmdDrawMeshTasksEXT", (void*)CmdDrawMeshTasksEXT},
+ {"vkCmdDrawMeshTasksIndirectEXT", (void*)CmdDrawMeshTasksIndirectEXT},
+ {"vkCmdDrawMeshTasksIndirectCountEXT", (void*)CmdDrawMeshTasksIndirectCountEXT},
};
diff --git a/icd/generated/vk_typemap_helper.h b/icd/generated/vk_typemap_helper.h
index f2ac9df9..f2cdbf8e 100644
--- a/icd/generated/vk_typemap_helper.h
+++ b/icd/generated/vk_typemap_helper.h
@@ -2318,6 +2318,17 @@ template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR>
#endif // VK_ENABLE_BETA_EXTENSIONS
#ifdef VK_ENABLE_BETA_EXTENSIONS
+// Map type VkVideoDecodeUsageInfoKHR to id VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR
+template <> struct LvlTypeMap<VkVideoDecodeUsageInfoKHR> {
+ static const VkStructureType kSType = VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR;
+};
+
+template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR> {
+ typedef VkVideoDecodeUsageInfoKHR Type;
+};
+
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
// Map type VkVideoDecodeInfoKHR to id VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR
template <> struct LvlTypeMap<VkVideoDecodeInfoKHR> {
static const VkStructureType kSType = VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR;
@@ -2946,6 +2957,17 @@ template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR>
#endif // VK_ENABLE_BETA_EXTENSIONS
#ifdef VK_ENABLE_BETA_EXTENSIONS
+// Map type VkVideoEncodeUsageInfoKHR to id VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR
+template <> struct LvlTypeMap<VkVideoEncodeUsageInfoKHR> {
+ static const VkStructureType kSType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR;
+};
+
+template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR> {
+ typedef VkVideoEncodeUsageInfoKHR Type;
+};
+
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
// Map type VkVideoEncodeRateControlLayerInfoKHR to id VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR
template <> struct LvlTypeMap<VkVideoEncodeRateControlLayerInfoKHR> {
static const VkStructureType kSType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR;
@@ -6024,6 +6046,15 @@ template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPP
typedef VkDescriptorSetLayoutHostMappingInfoVALVE Type;
};
+// Map type VkPhysicalDeviceDepthClampZeroOneFeaturesEXT to id VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT
+template <> struct LvlTypeMap<VkPhysicalDeviceDepthClampZeroOneFeaturesEXT> {
+ static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT;
+};
+
+template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT> {
+ typedef VkPhysicalDeviceDepthClampZeroOneFeaturesEXT Type;
+};
+
// Map type VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT to id VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT
template <> struct LvlTypeMap<VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT> {
static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT;
@@ -6402,6 +6433,24 @@ template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATU
typedef VkPhysicalDeviceRayQueryFeaturesKHR Type;
};
+// Map type VkPhysicalDeviceMeshShaderFeaturesEXT to id VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT
+template <> struct LvlTypeMap<VkPhysicalDeviceMeshShaderFeaturesEXT> {
+ static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT;
+};
+
+template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT> {
+ typedef VkPhysicalDeviceMeshShaderFeaturesEXT Type;
+};
+
+// Map type VkPhysicalDeviceMeshShaderPropertiesEXT to id VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT
+template <> struct LvlTypeMap<VkPhysicalDeviceMeshShaderPropertiesEXT> {
+ static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT;
+};
+
+template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT> {
+ typedef VkPhysicalDeviceMeshShaderPropertiesEXT Type;
+};
+
// Header "base class" for pNext chain traversal
struct LvlGenericHeader {
VkStructureType sType;
diff --git a/scripts/generate_vulkan_wrapper.py b/scripts/generate_vulkan_wrapper.py
index 95a3b84c..19122818 100755
--- a/scripts/generate_vulkan_wrapper.py
+++ b/scripts/generate_vulkan_wrapper.py
@@ -1312,6 +1312,9 @@ VK_VALVE_descriptor_set_host_mapping = Extension(name='VK_VALVE_descriptor_set_h
Command(name='vkGetDescriptorSetHostMappingVALVE', dispatch='VkDevice'),
])
+VK_EXT_depth_clamp_zero_one = Extension(name='VK_EXT_depth_clamp_zero_one', version=1, guard=None, commands=[
+])
+
VK_EXT_non_seamless_cube_map = Extension(name='VK_EXT_non_seamless_cube_map', version=1, guard=None, commands=[
])
@@ -1380,6 +1383,12 @@ VK_KHR_ray_tracing_pipeline = Extension(name='VK_KHR_ray_tracing_pipeline', vers
VK_KHR_ray_query = Extension(name='VK_KHR_ray_query', version=1, guard=None, commands=[
])
+VK_EXT_mesh_shader = Extension(name='VK_EXT_mesh_shader', version=1, guard=None, commands=[
+ Command(name='vkCmdDrawMeshTasksEXT', dispatch='VkCommandBuffer'),
+ Command(name='vkCmdDrawMeshTasksIndirectEXT', dispatch='VkCommandBuffer'),
+ Command(name='vkCmdDrawMeshTasksIndirectCountEXT', dispatch='VkCommandBuffer'),
+])
+
VK_KHR_android_surface = Extension(name='VK_KHR_android_surface', version=6, guard='VK_USE_PLATFORM_ANDROID_KHR', commands=[
Command(name='vkCreateAndroidSurfaceKHR', dispatch='VkInstance'),
])
@@ -1520,14 +1529,14 @@ VK_KHR_video_queue = Extension(name='VK_KHR_video_queue', version=5, guard='VK_E
Command(name='vkCmdControlVideoCodingKHR', dispatch='VkCommandBuffer'),
])
-VK_KHR_video_decode_queue = Extension(name='VK_KHR_video_decode_queue', version=5, guard='VK_ENABLE_BETA_EXTENSIONS', commands=[
+VK_KHR_video_decode_queue = Extension(name='VK_KHR_video_decode_queue', version=6, guard='VK_ENABLE_BETA_EXTENSIONS', commands=[
Command(name='vkCmdDecodeVideoKHR', dispatch='VkCommandBuffer'),
])
VK_KHR_portability_subset = Extension(name='VK_KHR_portability_subset', version=1, guard='VK_ENABLE_BETA_EXTENSIONS', commands=[
])
-VK_KHR_video_encode_queue = Extension(name='VK_KHR_video_encode_queue', version=6, guard='VK_ENABLE_BETA_EXTENSIONS', commands=[
+VK_KHR_video_encode_queue = Extension(name='VK_KHR_video_encode_queue', version=7, guard='VK_ENABLE_BETA_EXTENSIONS', commands=[
Command(name='vkCmdEncodeVideoKHR', dispatch='VkCommandBuffer'),
])
@@ -1793,6 +1802,7 @@ extensions = [
VK_EXT_border_color_swizzle,
VK_EXT_pageable_device_local_memory,
VK_VALVE_descriptor_set_host_mapping,
+ VK_EXT_depth_clamp_zero_one,
VK_EXT_non_seamless_cube_map,
VK_QCOM_fragment_density_map_offset,
VK_NV_linear_color_attachment,
@@ -1807,6 +1817,7 @@ extensions = [
VK_KHR_acceleration_structure,
VK_KHR_ray_tracing_pipeline,
VK_KHR_ray_query,
+ VK_EXT_mesh_shader,
VK_KHR_android_surface,
VK_ANDROID_external_memory_android_hardware_buffer,
VK_FUCHSIA_imagepipe_surface,
diff --git a/scripts/known_good.json b/scripts/known_good.json
index 7f5f3347..b4e28bc7 100644
--- a/scripts/known_good.json
+++ b/scripts/known_good.json
@@ -6,7 +6,7 @@
"sub_dir" : "Vulkan-Headers",
"build_dir" : "Vulkan-Headers/build",
"install_dir" : "Vulkan-Headers/build/install",
- "commit" : "v1.3.225"
+ "commit" : "v1.3.226"
},
{
"name" : "MoltenVK",
@@ -30,7 +30,7 @@
"sub_dir" : "Vulkan-Loader",
"build_dir" : "Vulkan-Loader/build",
"install_dir" : "Vulkan-Loader/build/install",
- "commit" : "v1.3.225",
+ "commit" : "v1.3.226",
"deps" : [
{
"var_name" : "VULKAN_HEADERS_INSTALL_DIR",
diff --git a/vulkaninfo/generated/vulkaninfo.hpp b/vulkaninfo/generated/vulkaninfo.hpp
index 9601dcb9..30c8e79d 100644
--- a/vulkaninfo/generated/vulkaninfo.hpp
+++ b/vulkaninfo/generated/vulkaninfo.hpp
@@ -985,8 +985,8 @@ std::vector<const char *> VkShaderStageFlagBitsGetStrings(VkShaderStageFlagBits
if (VK_SHADER_STAGE_MISS_BIT_KHR & value) strings.push_back("SHADER_STAGE_MISS_BIT_KHR");
if (VK_SHADER_STAGE_INTERSECTION_BIT_KHR & value) strings.push_back("SHADER_STAGE_INTERSECTION_BIT_KHR");
if (VK_SHADER_STAGE_CALLABLE_BIT_KHR & value) strings.push_back("SHADER_STAGE_CALLABLE_BIT_KHR");
- if (VK_SHADER_STAGE_TASK_BIT_NV & value) strings.push_back("SHADER_STAGE_TASK_BIT_NV");
- if (VK_SHADER_STAGE_MESH_BIT_NV & value) strings.push_back("SHADER_STAGE_MESH_BIT_NV");
+ if (VK_SHADER_STAGE_TASK_BIT_EXT & value) strings.push_back("SHADER_STAGE_TASK_BIT_EXT");
+ if (VK_SHADER_STAGE_MESH_BIT_EXT & value) strings.push_back("SHADER_STAGE_MESH_BIT_EXT");
if (VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI & value) strings.push_back("SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI");
return strings;
}
@@ -1343,6 +1343,11 @@ void DumpVkPhysicalDeviceCustomBorderColorPropertiesEXT(Printer &p, std::string
p.SetMinKeyWidth(28);
p.PrintKeyValue("maxCustomBorderColorSamplers", obj.maxCustomBorderColorSamplers);
}
+void DumpVkPhysicalDeviceDepthClampZeroOneFeaturesEXT(Printer &p, std::string name, const VkPhysicalDeviceDepthClampZeroOneFeaturesEXT &obj) {
+ ObjectWrapper object{p, name};
+ p.SetMinKeyWidth(17);
+ p.PrintKeyBool("depthClampZeroOne", static_cast<bool>(obj.depthClampZeroOne));
+}
void DumpVkPhysicalDeviceDepthClipControlFeaturesEXT(Printer &p, std::string name, const VkPhysicalDeviceDepthClipControlFeaturesEXT &obj) {
ObjectWrapper object{p, name};
p.SetMinKeyWidth(16);
@@ -1919,6 +1924,63 @@ void DumpVkPhysicalDeviceMemoryPriorityFeaturesEXT(Printer &p, std::string name,
p.SetMinKeyWidth(14);
p.PrintKeyBool("memoryPriority", static_cast<bool>(obj.memoryPriority));
}
+void DumpVkPhysicalDeviceMeshShaderFeaturesEXT(Printer &p, std::string name, const VkPhysicalDeviceMeshShaderFeaturesEXT &obj) {
+ ObjectWrapper object{p, name};
+ p.SetMinKeyWidth(38);
+ p.PrintKeyBool("taskShader", static_cast<bool>(obj.taskShader));
+ p.PrintKeyBool("meshShader", static_cast<bool>(obj.meshShader));
+ p.PrintKeyBool("multiviewMeshShader", static_cast<bool>(obj.multiviewMeshShader));
+ p.PrintKeyBool("primitiveFragmentShadingRateMeshShader", static_cast<bool>(obj.primitiveFragmentShadingRateMeshShader));
+ p.PrintKeyBool("meshShaderQueries", static_cast<bool>(obj.meshShaderQueries));
+}
+void DumpVkPhysicalDeviceMeshShaderPropertiesEXT(Printer &p, std::string name, const VkPhysicalDeviceMeshShaderPropertiesEXT &obj) {
+ ObjectWrapper object{p, name};
+ p.SetMinKeyWidth(37);
+ p.PrintKeyValue("maxTaskWorkGroupTotalCount", obj.maxTaskWorkGroupTotalCount);
+ { ArrayWrapper arr(p,"maxTaskWorkGroupCount", 3);
+ p.PrintElement(obj.maxTaskWorkGroupCount[0]);
+ p.PrintElement(obj.maxTaskWorkGroupCount[1]);
+ p.PrintElement(obj.maxTaskWorkGroupCount[2]);
+ }
+ p.PrintKeyValue("maxTaskWorkGroupInvocations", obj.maxTaskWorkGroupInvocations);
+ { ArrayWrapper arr(p,"maxTaskWorkGroupSize", 3);
+ p.PrintElement(obj.maxTaskWorkGroupSize[0]);
+ p.PrintElement(obj.maxTaskWorkGroupSize[1]);
+ p.PrintElement(obj.maxTaskWorkGroupSize[2]);
+ }
+ p.PrintKeyValue("maxTaskPayloadSize", obj.maxTaskPayloadSize);
+ p.PrintKeyValue("maxTaskSharedMemorySize", obj.maxTaskSharedMemorySize);
+ p.PrintKeyValue("maxTaskPayloadAndSharedMemorySize", obj.maxTaskPayloadAndSharedMemorySize);
+ p.PrintKeyValue("maxMeshWorkGroupTotalCount", obj.maxMeshWorkGroupTotalCount);
+ { ArrayWrapper arr(p,"maxMeshWorkGroupCount", 3);
+ p.PrintElement(obj.maxMeshWorkGroupCount[0]);
+ p.PrintElement(obj.maxMeshWorkGroupCount[1]);
+ p.PrintElement(obj.maxMeshWorkGroupCount[2]);
+ }
+ p.PrintKeyValue("maxMeshWorkGroupInvocations", obj.maxMeshWorkGroupInvocations);
+ { ArrayWrapper arr(p,"maxMeshWorkGroupSize", 3);
+ p.PrintElement(obj.maxMeshWorkGroupSize[0]);
+ p.PrintElement(obj.maxMeshWorkGroupSize[1]);
+ p.PrintElement(obj.maxMeshWorkGroupSize[2]);
+ }
+ p.PrintKeyValue("maxMeshSharedMemorySize", obj.maxMeshSharedMemorySize);
+ p.PrintKeyValue("maxMeshPayloadAndSharedMemorySize", obj.maxMeshPayloadAndSharedMemorySize);
+ p.PrintKeyValue("maxMeshOutputMemorySize", obj.maxMeshOutputMemorySize);
+ p.PrintKeyValue("maxMeshPayloadAndOutputMemorySize", obj.maxMeshPayloadAndOutputMemorySize);
+ p.PrintKeyValue("maxMeshOutputComponents", obj.maxMeshOutputComponents);
+ p.PrintKeyValue("maxMeshOutputVertices", obj.maxMeshOutputVertices);
+ p.PrintKeyValue("maxMeshOutputPrimitives", obj.maxMeshOutputPrimitives);
+ p.PrintKeyValue("maxMeshOutputLayers", obj.maxMeshOutputLayers);
+ p.PrintKeyValue("maxMeshMultiviewViewCount", obj.maxMeshMultiviewViewCount);
+ p.PrintKeyValue("meshOutputPerVertexGranularity", obj.meshOutputPerVertexGranularity);
+ p.PrintKeyValue("meshOutputPerPrimitiveGranularity", obj.meshOutputPerPrimitiveGranularity);
+ p.PrintKeyValue("maxPreferredTaskWorkGroupInvocations", obj.maxPreferredTaskWorkGroupInvocations);
+ p.PrintKeyValue("maxPreferredMeshWorkGroupInvocations", obj.maxPreferredMeshWorkGroupInvocations);
+ p.PrintKeyBool("prefersLocalInvocationVertexOutput", static_cast<bool>(obj.prefersLocalInvocationVertexOutput));
+ p.PrintKeyBool("prefersLocalInvocationPrimitiveOutput", static_cast<bool>(obj.prefersLocalInvocationPrimitiveOutput));
+ p.PrintKeyBool("prefersCompactVertexOutput", static_cast<bool>(obj.prefersCompactVertexOutput));
+ p.PrintKeyBool("prefersCompactPrimitiveOutput", static_cast<bool>(obj.prefersCompactPrimitiveOutput));
+}
void DumpVkPhysicalDeviceMultiDrawFeaturesEXT(Printer &p, std::string name, const VkPhysicalDeviceMultiDrawFeaturesEXT &obj) {
ObjectWrapper object{p, name};
p.SetMinKeyWidth(9);
@@ -2790,6 +2852,7 @@ struct phys_device_props2_chain {
VkPhysicalDeviceLineRasterizationPropertiesEXT PhysicalDeviceLineRasterizationPropertiesEXT{};
VkPhysicalDeviceMaintenance3Properties PhysicalDeviceMaintenance3Properties{};
VkPhysicalDeviceMaintenance4Properties PhysicalDeviceMaintenance4Properties{};
+ VkPhysicalDeviceMeshShaderPropertiesEXT PhysicalDeviceMeshShaderPropertiesEXT{};
VkPhysicalDeviceMultiDrawPropertiesEXT PhysicalDeviceMultiDrawPropertiesEXT{};
VkPhysicalDeviceMultiviewProperties PhysicalDeviceMultiviewProperties{};
VkPhysicalDevicePCIBusInfoPropertiesEXT PhysicalDevicePCIBusInfoPropertiesEXT{};
@@ -2839,6 +2902,7 @@ struct phys_device_props2_chain {
PhysicalDeviceLineRasterizationPropertiesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT;
PhysicalDeviceMaintenance3Properties.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES;
PhysicalDeviceMaintenance4Properties.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES;
+ PhysicalDeviceMeshShaderPropertiesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT;
PhysicalDeviceMultiDrawPropertiesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT;
PhysicalDeviceMultiviewProperties.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES;
PhysicalDevicePCIBusInfoPropertiesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT;
@@ -2888,6 +2952,7 @@ struct phys_device_props2_chain {
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceLineRasterizationPropertiesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceMaintenance3Properties));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceMaintenance4Properties));
+ chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceMeshShaderPropertiesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceMultiDrawPropertiesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceMultiviewProperties));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDevicePCIBusInfoPropertiesEXT));
@@ -2971,6 +3036,7 @@ struct phys_device_features2_chain {
VkPhysicalDeviceColorWriteEnableFeaturesEXT PhysicalDeviceColorWriteEnableFeaturesEXT{};
VkPhysicalDeviceConditionalRenderingFeaturesEXT PhysicalDeviceConditionalRenderingFeaturesEXT{};
VkPhysicalDeviceCustomBorderColorFeaturesEXT PhysicalDeviceCustomBorderColorFeaturesEXT{};
+ VkPhysicalDeviceDepthClampZeroOneFeaturesEXT PhysicalDeviceDepthClampZeroOneFeaturesEXT{};
VkPhysicalDeviceDepthClipControlFeaturesEXT PhysicalDeviceDepthClipControlFeaturesEXT{};
VkPhysicalDeviceDepthClipEnableFeaturesEXT PhysicalDeviceDepthClipEnableFeaturesEXT{};
VkPhysicalDeviceDescriptorIndexingFeatures PhysicalDeviceDescriptorIndexingFeatures{};
@@ -2997,6 +3063,7 @@ struct phys_device_features2_chain {
VkPhysicalDeviceLineRasterizationFeaturesEXT PhysicalDeviceLineRasterizationFeaturesEXT{};
VkPhysicalDeviceMaintenance4Features PhysicalDeviceMaintenance4Features{};
VkPhysicalDeviceMemoryPriorityFeaturesEXT PhysicalDeviceMemoryPriorityFeaturesEXT{};
+ VkPhysicalDeviceMeshShaderFeaturesEXT PhysicalDeviceMeshShaderFeaturesEXT{};
VkPhysicalDeviceMultiDrawFeaturesEXT PhysicalDeviceMultiDrawFeaturesEXT{};
VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT PhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT{};
VkPhysicalDeviceMultiviewFeatures PhysicalDeviceMultiviewFeatures{};
@@ -3073,6 +3140,7 @@ struct phys_device_features2_chain {
PhysicalDeviceColorWriteEnableFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT;
PhysicalDeviceConditionalRenderingFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT;
PhysicalDeviceCustomBorderColorFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT;
+ PhysicalDeviceDepthClampZeroOneFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT;
PhysicalDeviceDepthClipControlFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT;
PhysicalDeviceDepthClipEnableFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT;
PhysicalDeviceDescriptorIndexingFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES;
@@ -3099,6 +3167,7 @@ struct phys_device_features2_chain {
PhysicalDeviceLineRasterizationFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT;
PhysicalDeviceMaintenance4Features.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES;
PhysicalDeviceMemoryPriorityFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT;
+ PhysicalDeviceMeshShaderFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT;
PhysicalDeviceMultiDrawFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT;
PhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT;
PhysicalDeviceMultiviewFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES;
@@ -3174,6 +3243,7 @@ struct phys_device_features2_chain {
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceColorWriteEnableFeaturesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceConditionalRenderingFeaturesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceCustomBorderColorFeaturesEXT));
+ chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceDepthClampZeroOneFeaturesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceDepthClipControlFeaturesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceDepthClipEnableFeaturesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceDescriptorIndexingFeatures));
@@ -3200,6 +3270,7 @@ struct phys_device_features2_chain {
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceLineRasterizationFeaturesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceMaintenance4Features));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceMemoryPriorityFeaturesEXT));
+ chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceMeshShaderFeaturesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceMultiDrawFeaturesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceMultiviewFeatures));
@@ -3516,6 +3587,12 @@ void chain_iterator_phys_device_props2(Printer &p, AppInstance &inst, AppGpu &gp
DumpVkPhysicalDeviceMaintenance4Properties(p, gpu.api_version.minor >= 3 ?"VkPhysicalDeviceMaintenance4Properties":"VkPhysicalDeviceMaintenance4PropertiesKHR", *props);
p.AddNewline();
}
+ if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT &&
+ (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_MESH_SHADER_EXTENSION_NAME))) {
+ VkPhysicalDeviceMeshShaderPropertiesEXT* props = (VkPhysicalDeviceMeshShaderPropertiesEXT*)structure;
+ DumpVkPhysicalDeviceMeshShaderPropertiesEXT(p, "VkPhysicalDeviceMeshShaderPropertiesEXT", *props);
+ p.AddNewline();
+ }
if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT &&
(gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_MULTI_DRAW_EXTENSION_NAME))) {
VkPhysicalDeviceMultiDrawPropertiesEXT* props = (VkPhysicalDeviceMultiDrawPropertiesEXT*)structure;
@@ -3763,6 +3840,12 @@ void chain_iterator_phys_device_features2(Printer &p, AppGpu &gpu, void * place)
DumpVkPhysicalDeviceCustomBorderColorFeaturesEXT(p, "VkPhysicalDeviceCustomBorderColorFeaturesEXT", *props);
p.AddNewline();
}
+ if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT &&
+ (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_DEPTH_CLAMP_ZERO_ONE_EXTENSION_NAME))) {
+ VkPhysicalDeviceDepthClampZeroOneFeaturesEXT* props = (VkPhysicalDeviceDepthClampZeroOneFeaturesEXT*)structure;
+ DumpVkPhysicalDeviceDepthClampZeroOneFeaturesEXT(p, "VkPhysicalDeviceDepthClampZeroOneFeaturesEXT", *props);
+ p.AddNewline();
+ }
if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT &&
(gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME))) {
VkPhysicalDeviceDepthClipControlFeaturesEXT* props = (VkPhysicalDeviceDepthClipControlFeaturesEXT*)structure;
@@ -3926,6 +4009,12 @@ void chain_iterator_phys_device_features2(Printer &p, AppGpu &gpu, void * place)
DumpVkPhysicalDeviceMemoryPriorityFeaturesEXT(p, "VkPhysicalDeviceMemoryPriorityFeaturesEXT", *props);
p.AddNewline();
}
+ if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT &&
+ (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_MESH_SHADER_EXTENSION_NAME))) {
+ VkPhysicalDeviceMeshShaderFeaturesEXT* props = (VkPhysicalDeviceMeshShaderFeaturesEXT*)structure;
+ DumpVkPhysicalDeviceMeshShaderFeaturesEXT(p, "VkPhysicalDeviceMeshShaderFeaturesEXT", *props);
+ p.AddNewline();
+ }
if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT &&
(gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_MULTI_DRAW_EXTENSION_NAME))) {
VkPhysicalDeviceMultiDrawFeaturesEXT* props = (VkPhysicalDeviceMultiDrawFeaturesEXT*)structure;