Skip to content

Commit 3434063

Browse files
committed
Updated to Vulkan headers 1.4.315
Adds support for: - VK_EXT_zero_initialize_device_memory - VK_KHR_robustness2
1 parent 7eb7480 commit 3434063

4 files changed

Lines changed: 34 additions & 2 deletions

File tree

VulkanDeviceInfoExtensions.cpp

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1028,6 +1028,16 @@ void VulkanDeviceInfoExtensions::readPhysicalProperties_KHR() {
10281028
pushProperty2(extension, "maxDescriptorSetUpdateAfterBindTotalBuffersDynamic", QVariant(extProps->maxDescriptorSetUpdateAfterBindTotalBuffersDynamic));
10291029
delete extProps;
10301030
}
1031+
if (extensionSupported("VK_KHR_robustness2")) {
1032+
const char* extension("VK_KHR_robustness2");
1033+
VkPhysicalDeviceRobustness2PropertiesKHR* extProps = new VkPhysicalDeviceRobustness2PropertiesKHR{};
1034+
extProps->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_KHR;
1035+
deviceProps2 = initDeviceProperties2(extProps);
1036+
vulkanContext.vkGetPhysicalDeviceProperties2KHR(device, &deviceProps2);
1037+
pushProperty2(extension, "robustStorageBufferAccessSizeAlignment", QVariant::fromValue(extProps->robustStorageBufferAccessSizeAlignment));
1038+
pushProperty2(extension, "robustUniformBufferAccessSizeAlignment", QVariant::fromValue(extProps->robustUniformBufferAccessSizeAlignment));
1039+
delete extProps;
1040+
}
10311041
}
10321042
void VulkanDeviceInfoExtensions::readPhysicalProperties_MESA() {
10331043
VkPhysicalDeviceProperties2 deviceProps2{};
@@ -2402,6 +2412,15 @@ void VulkanDeviceInfoExtensions::readPhysicalFeatures_EXT() {
24022412
pushFeature2(extension, "fragmentDensityMapOffset", extFeatures->fragmentDensityMapOffset);
24032413
delete extFeatures;
24042414
}
2415+
if (extensionSupported("VK_EXT_zero_initialize_device_memory")) {
2416+
const char* extension("VK_EXT_zero_initialize_device_memory");
2417+
VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT* extFeatures = new VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT{};
2418+
extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_DEVICE_MEMORY_FEATURES_EXT;
2419+
deviceFeatures2 = initDeviceFeatures2(extFeatures);
2420+
vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
2421+
pushFeature2(extension, "zeroInitializeDeviceMemory", extFeatures->zeroInitializeDeviceMemory);
2422+
delete extFeatures;
2423+
}
24052424
}
24062425
void VulkanDeviceInfoExtensions::readPhysicalFeatures_HUAWEI() {
24072426
VkPhysicalDeviceFeatures2 deviceFeatures2{};
@@ -3055,6 +3074,17 @@ void VulkanDeviceInfoExtensions::readPhysicalFeatures_KHR() {
30553074
pushFeature2(extension, "depthClampZeroOne", extFeatures->depthClampZeroOne);
30563075
delete extFeatures;
30573076
}
3077+
if (extensionSupported("VK_KHR_robustness2")) {
3078+
const char* extension("VK_KHR_robustness2");
3079+
VkPhysicalDeviceRobustness2FeaturesKHR* extFeatures = new VkPhysicalDeviceRobustness2FeaturesKHR{};
3080+
extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_KHR;
3081+
deviceFeatures2 = initDeviceFeatures2(extFeatures);
3082+
vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
3083+
pushFeature2(extension, "robustBufferAccess2", extFeatures->robustBufferAccess2);
3084+
pushFeature2(extension, "robustImageAccess2", extFeatures->robustImageAccess2);
3085+
pushFeature2(extension, "nullDescriptor", extFeatures->nullDescriptor);
3086+
delete extFeatures;
3087+
}
30583088
}
30593089
void VulkanDeviceInfoExtensions::readPhysicalFeatures_MESA() {
30603090
VkPhysicalDeviceFeatures2 deviceFeatures2{};

VulkanDeviceInfoExtensions.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ class VulkanDeviceInfoExtensions
8989
void readPhysicalFeatures_VALVE();
9090

9191
public:
92-
const uint32_t vkHeaderVersion = 313;
92+
const uint32_t vkHeaderVersion = 315;
9393
std::vector<Feature2> features2;
9494
std::vector<Property2> properties2;
9595
std::vector<VkExtensionProperties> extensions;

extensionlist.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ VK_EXT_device_generated_commands
111111
VK_EXT_depth_clamp_control
112112
VK_EXT_vertex_attribute_robustness
113113
VK_EXT_fragment_density_map_offset
114+
VK_EXT_zero_initialize_device_memory
114115
HUAWEI
115116
VK_HUAWEI_subpass_shading
116117
VK_HUAWEI_invocation_mask
@@ -189,6 +190,7 @@ VK_KHR_maintenance7
189190
VK_KHR_maintenance8
190191
VK_KHR_video_maintenance2
191192
VK_KHR_depth_clamp_zero_one
193+
VK_KHR_robustness2
192194
MESA
193195
VK_MESA_image_alignment_control
194196
MSFT

0 commit comments

Comments
 (0)