mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-03-28 11:19:21 +01:00
[dxvk] Enable VK_KHR_swapchain_mutable_format if supported
This commit is contained in:
parent
79d7b3720c
commit
223496eea4
@ -78,6 +78,7 @@
|
|||||||
"VK_KHR_maintenance5": 1,
|
"VK_KHR_maintenance5": 1,
|
||||||
"VK_KHR_present_id": 1,
|
"VK_KHR_present_id": 1,
|
||||||
"VK_KHR_present_wait": 1,
|
"VK_KHR_present_wait": 1,
|
||||||
|
"VK_KHR_swapchain_mutable_format": 1,
|
||||||
"VK_EXT_line_rasterization": 1,
|
"VK_EXT_line_rasterization": 1,
|
||||||
"VK_EXT_pageable_device_local_memory": 1,
|
"VK_EXT_pageable_device_local_memory": 1,
|
||||||
"VK_EXT_swapchain_maintenance1": 1
|
"VK_EXT_swapchain_maintenance1": 1
|
||||||
|
@ -1069,6 +1069,7 @@ namespace dxvk {
|
|||||||
&devExtensions.khrPresentId,
|
&devExtensions.khrPresentId,
|
||||||
&devExtensions.khrPresentWait,
|
&devExtensions.khrPresentWait,
|
||||||
&devExtensions.khrSwapchain,
|
&devExtensions.khrSwapchain,
|
||||||
|
&devExtensions.khrSwapchainMutableFormat,
|
||||||
&devExtensions.khrWin32KeyedMutex,
|
&devExtensions.khrWin32KeyedMutex,
|
||||||
&devExtensions.nvDescriptorPoolOverallocation,
|
&devExtensions.nvDescriptorPoolOverallocation,
|
||||||
&devExtensions.nvLowLatency2,
|
&devExtensions.nvLowLatency2,
|
||||||
@ -1222,6 +1223,9 @@ namespace dxvk {
|
|||||||
enabledFeatures.khrPresentWait.pNext = std::exchange(enabledFeatures.core.pNext, &enabledFeatures.khrPresentWait);
|
enabledFeatures.khrPresentWait.pNext = std::exchange(enabledFeatures.core.pNext, &enabledFeatures.khrPresentWait);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (devExtensions.khrSwapchainMutableFormat)
|
||||||
|
enabledFeatures.khrSwapchainMutableFormat = VK_TRUE;
|
||||||
|
|
||||||
if (devExtensions.nvDescriptorPoolOverallocation) {
|
if (devExtensions.nvDescriptorPoolOverallocation) {
|
||||||
enabledFeatures.nvDescriptorPoolOverallocation.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_POOL_OVERALLOCATION_FEATURES_NV;
|
enabledFeatures.nvDescriptorPoolOverallocation.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_POOL_OVERALLOCATION_FEATURES_NV;
|
||||||
enabledFeatures.nvDescriptorPoolOverallocation.pNext = std::exchange(enabledFeatures.core.pNext, &enabledFeatures.nvDescriptorPoolOverallocation);
|
enabledFeatures.nvDescriptorPoolOverallocation.pNext = std::exchange(enabledFeatures.core.pNext, &enabledFeatures.nvDescriptorPoolOverallocation);
|
||||||
|
@ -74,6 +74,7 @@ namespace dxvk {
|
|||||||
VkPhysicalDeviceMaintenance5FeaturesKHR khrMaintenance5;
|
VkPhysicalDeviceMaintenance5FeaturesKHR khrMaintenance5;
|
||||||
VkPhysicalDevicePresentIdFeaturesKHR khrPresentId;
|
VkPhysicalDevicePresentIdFeaturesKHR khrPresentId;
|
||||||
VkPhysicalDevicePresentWaitFeaturesKHR khrPresentWait;
|
VkPhysicalDevicePresentWaitFeaturesKHR khrPresentWait;
|
||||||
|
VkBool32 khrSwapchainMutableFormat;
|
||||||
VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV nvDescriptorPoolOverallocation;
|
VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV nvDescriptorPoolOverallocation;
|
||||||
VkBool32 nvLowLatency2;
|
VkBool32 nvLowLatency2;
|
||||||
VkPhysicalDeviceRawAccessChainsFeaturesNV nvRawAccessChains;
|
VkPhysicalDeviceRawAccessChainsFeaturesNV nvRawAccessChains;
|
||||||
|
@ -326,6 +326,7 @@ namespace dxvk {
|
|||||||
DxvkExt khrPresentId = { VK_KHR_PRESENT_ID_EXTENSION_NAME, DxvkExtMode::Optional };
|
DxvkExt khrPresentId = { VK_KHR_PRESENT_ID_EXTENSION_NAME, DxvkExtMode::Optional };
|
||||||
DxvkExt khrPresentWait = { VK_KHR_PRESENT_WAIT_EXTENSION_NAME, DxvkExtMode::Optional };
|
DxvkExt khrPresentWait = { VK_KHR_PRESENT_WAIT_EXTENSION_NAME, DxvkExtMode::Optional };
|
||||||
DxvkExt khrSwapchain = { VK_KHR_SWAPCHAIN_EXTENSION_NAME, DxvkExtMode::Required };
|
DxvkExt khrSwapchain = { VK_KHR_SWAPCHAIN_EXTENSION_NAME, DxvkExtMode::Required };
|
||||||
|
DxvkExt khrSwapchainMutableFormat = { VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME, DxvkExtMode::Optional };
|
||||||
DxvkExt khrWin32KeyedMutex = { VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME, DxvkExtMode::Optional };
|
DxvkExt khrWin32KeyedMutex = { VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME, DxvkExtMode::Optional };
|
||||||
DxvkExt nvDescriptorPoolOverallocation = { VK_NV_DESCRIPTOR_POOL_OVERALLOCATION_EXTENSION_NAME, DxvkExtMode::Optional };
|
DxvkExt nvDescriptorPoolOverallocation = { VK_NV_DESCRIPTOR_POOL_OVERALLOCATION_EXTENSION_NAME, DxvkExtMode::Optional };
|
||||||
DxvkExt nvLowLatency2 = { VK_NV_LOW_LATENCY_2_EXTENSION_NAME, DxvkExtMode::Optional };
|
DxvkExt nvLowLatency2 = { VK_NV_LOW_LATENCY_2_EXTENSION_NAME, DxvkExtMode::Optional };
|
||||||
|
Loading…
x
Reference in New Issue
Block a user