Skip to content

Commit

Permalink
Updated to Vulkan headers 1.3.294
Browse files Browse the repository at this point in the history
Adds support for:
- VK_AMD_anti_lag
- VK_KHR_pipeline_binary
- VK_NV_command_buffer_inheritance
  • Loading branch information
SaschaWillems committed Aug 23, 2024
1 parent 257df74 commit cf19f19
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 2 deletions.
40 changes: 40 additions & 0 deletions VulkanDeviceInfoExtensions.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -920,6 +920,19 @@ void VulkanDeviceInfoExtensions::readPhysicalProperties_KHR() {
pushProperty2(extension, "nonStrictWideLinesUseParallelogram", QVariant(bool(extProps->nonStrictWideLinesUseParallelogram)));
delete extProps;
}
if (extensionSupported("VK_KHR_pipeline_binary")) {
const char* extension("VK_KHR_pipeline_binary");
VkPhysicalDevicePipelineBinaryPropertiesKHR* extProps = new VkPhysicalDevicePipelineBinaryPropertiesKHR{};
extProps->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_BINARY_PROPERTIES_KHR;
deviceProps2 = initDeviceProperties2(extProps);
vulkanContext.vkGetPhysicalDeviceProperties2KHR(device, &deviceProps2);
pushProperty2(extension, "pipelineBinaryInternalCache", QVariant(bool(extProps->pipelineBinaryInternalCache)));
pushProperty2(extension, "pipelineBinaryInternalCacheControl", QVariant(bool(extProps->pipelineBinaryInternalCacheControl)));
pushProperty2(extension, "pipelineBinaryPrefersInternalCache", QVariant(bool(extProps->pipelineBinaryPrefersInternalCache)));
pushProperty2(extension, "pipelineBinaryPrecompiledInternalCache", QVariant(bool(extProps->pipelineBinaryPrecompiledInternalCache)));
pushProperty2(extension, "pipelineBinaryCompressedData", QVariant(bool(extProps->pipelineBinaryCompressedData)));
delete extProps;
}
if (extensionSupported("VK_KHR_cooperative_matrix")) {
const char* extension("VK_KHR_cooperative_matrix");
VkPhysicalDeviceCooperativeMatrixPropertiesKHR* extProps = new VkPhysicalDeviceCooperativeMatrixPropertiesKHR{};
Expand Down Expand Up @@ -1266,6 +1279,15 @@ void VulkanDeviceInfoExtensions::readPhysicalFeatures_AMD() {
pushFeature2(extension, "shaderEarlyAndLateFragmentTests", extFeatures->shaderEarlyAndLateFragmentTests);
delete extFeatures;
}
if (extensionSupported("VK_AMD_anti_lag")) {
const char* extension("VK_AMD_anti_lag");
VkPhysicalDeviceAntiLagFeaturesAMD* extFeatures = new VkPhysicalDeviceAntiLagFeaturesAMD{};
extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ANTI_LAG_FEATURES_AMD;
deviceFeatures2 = initDeviceFeatures2(extFeatures);
vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
pushFeature2(extension, "antiLag", extFeatures->antiLag);
delete extFeatures;
}
}
void VulkanDeviceInfoExtensions::readPhysicalFeatures_AMDX() {
VkPhysicalDeviceFeatures2 deviceFeatures2{};
Expand Down Expand Up @@ -2676,6 +2698,15 @@ void VulkanDeviceInfoExtensions::readPhysicalFeatures_KHR() {
pushFeature2(extension, "rayTracingPositionFetch", extFeatures->rayTracingPositionFetch);
delete extFeatures;
}
if (extensionSupported("VK_KHR_pipeline_binary")) {
const char* extension("VK_KHR_pipeline_binary");
VkPhysicalDevicePipelineBinaryFeaturesKHR* extFeatures = new VkPhysicalDevicePipelineBinaryFeaturesKHR{};
extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_BINARY_FEATURES_KHR;
deviceFeatures2 = initDeviceFeatures2(extFeatures);
vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
pushFeature2(extension, "pipelineBinaries", extFeatures->pipelineBinaries);
delete extFeatures;
}
if (extensionSupported("VK_KHR_cooperative_matrix")) {
const char* extension("VK_KHR_cooperative_matrix");
VkPhysicalDeviceCooperativeMatrixFeaturesKHR* extFeatures = new VkPhysicalDeviceCooperativeMatrixFeaturesKHR{};
Expand Down Expand Up @@ -3077,6 +3108,15 @@ void VulkanDeviceInfoExtensions::readPhysicalFeatures_NV() {
pushFeature2(extension, "shaderRawAccessChains", extFeatures->shaderRawAccessChains);
delete extFeatures;
}
if (extensionSupported("VK_NV_command_buffer_inheritance")) {
const char* extension("VK_NV_command_buffer_inheritance");
VkPhysicalDeviceCommandBufferInheritanceFeaturesNV* extFeatures = new VkPhysicalDeviceCommandBufferInheritanceFeaturesNV{};
extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMMAND_BUFFER_INHERITANCE_FEATURES_NV;
deviceFeatures2 = initDeviceFeatures2(extFeatures);
vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
pushFeature2(extension, "commandBufferInheritance", extFeatures->commandBufferInheritance);
delete extFeatures;
}
if (extensionSupported("VK_NV_shader_atomic_float16_vector")) {
const char* extension("VK_NV_shader_atomic_float16_vector");
VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV* extFeatures = new VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV{};
Expand Down
2 changes: 1 addition & 1 deletion VulkanDeviceInfoExtensions.h
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ class VulkanDeviceInfoExtensions
void readPhysicalFeatures_VALVE();

public:
const uint32_t vkHeaderVersion = 289;
const uint32_t vkHeaderVersion = 294;
std::vector<Feature2> features2;
std::vector<Property2> properties2;
std::vector<VkExtensionProperties> extensions;
Expand Down
3 changes: 3 additions & 0 deletions extensionlist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ VK_AMD_shader_core_properties
VK_AMD_shader_core_properties2
VK_AMD_device_coherent_memory
VK_AMD_shader_early_and_late_fragment_tests
VK_AMD_anti_lag
AMDX
VK_AMDX_shader_enqueue
ANDROID
Expand Down Expand Up @@ -163,6 +164,7 @@ VK_KHR_shader_subgroup_rotate
VK_KHR_shader_maximal_reconvergence
VK_KHR_maintenance5
VK_KHR_ray_tracing_position_fetch
VK_KHR_pipeline_binary
VK_KHR_cooperative_matrix
VK_KHR_video_maintenance1
VK_KHR_vertex_attribute_divisor
Expand Down Expand Up @@ -210,6 +212,7 @@ VK_NV_extended_sparse_address_space
VK_NV_per_stage_descriptor_set
VK_NV_descriptor_pool_overallocation
VK_NV_raw_access_chains
VK_NV_command_buffer_inheritance
VK_NV_shader_atomic_float16_vector
VK_NV_ray_tracing_validation
NVX
Expand Down

0 comments on commit cf19f19

Please sign in to comment.