Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/doitsujin/dxvk.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Ashton <joshua@froggi.es>2023-08-23 16:05:12 +0300
committerPhilip Rebohle <25567304+doitsujin@users.noreply.github.com>2023-08-23 17:50:52 +0300
commit82266902985ce5802290f1adca89c38c1364cbc0 (patch)
treeb8f371a628659ccfa02df72d9a5646ae03045520
parent138f727fbb0473223e696f737e451d930ba6aaff (diff)
[dxvk] Enable VK_KHR_win32_keyed_mutex
Co-authored-by: Paul Gofman <pgofman@codeweavers.com>
-rw-r--r--src/dxvk/dxvk_adapter.cpp8
-rw-r--r--src/dxvk/dxvk_device_info.h1
-rw-r--r--src/dxvk/dxvk_extensions.h1
3 files changed, 9 insertions, 1 deletions
diff --git a/src/dxvk/dxvk_adapter.cpp b/src/dxvk/dxvk_adapter.cpp
index 8472ffe4..8cf2e0e3 100644
--- a/src/dxvk/dxvk_adapter.cpp
+++ b/src/dxvk/dxvk_adapter.cpp
@@ -970,6 +970,7 @@ namespace dxvk {
&devExtensions.extVertexAttributeDivisor,
&devExtensions.khrExternalMemoryWin32,
&devExtensions.khrExternalSemaphoreWin32,
+ &devExtensions.khrWin32KeyedMutex,
&devExtensions.khrPipelineLibrary,
&devExtensions.khrPresentId,
&devExtensions.khrPresentWait,
@@ -1113,6 +1114,9 @@ namespace dxvk {
if (devExtensions.nvxImageViewHandle)
enabledFeatures.nvxImageViewHandle = VK_TRUE;
+
+ if (devExtensions.khrWin32KeyedMutex)
+ enabledFeatures.khrWin32KeyedMutex = VK_TRUE;
}
@@ -1252,7 +1256,9 @@ namespace dxvk {
"\n", VK_NVX_BINARY_IMPORT_EXTENSION_NAME,
"\n extension supported : ", features.nvxBinaryImport ? "1" : "0",
"\n", VK_NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME,
- "\n extension supported : ", features.nvxImageViewHandle ? "1" : "0"));
+ "\n extension supported : ", features.nvxImageViewHandle ? "1" : "0",
+ "\n", VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME,
+ "\n extension supported : ", features.khrWin32KeyedMutex ? "1" : "0"));
}
diff --git a/src/dxvk/dxvk_device_info.h b/src/dxvk/dxvk_device_info.h
index 0bc1d14e..1eb1b1dd 100644
--- a/src/dxvk/dxvk_device_info.h
+++ b/src/dxvk/dxvk_device_info.h
@@ -68,6 +68,7 @@ namespace dxvk {
VkPhysicalDevicePresentWaitFeaturesKHR khrPresentWait;
VkBool32 nvxBinaryImport;
VkBool32 nvxImageViewHandle;
+ VkBool32 khrWin32KeyedMutex;
};
} \ No newline at end of file
diff --git a/src/dxvk/dxvk_extensions.h b/src/dxvk/dxvk_extensions.h
index b27522c8..d8c7e0c4 100644
--- a/src/dxvk/dxvk_extensions.h
+++ b/src/dxvk/dxvk_extensions.h
@@ -319,6 +319,7 @@ namespace dxvk {
DxvkExt extVertexAttributeDivisor = { VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME, DxvkExtMode::Optional };
DxvkExt khrExternalMemoryWin32 = { VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME, DxvkExtMode::Optional };
DxvkExt khrExternalSemaphoreWin32 = { VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME, DxvkExtMode::Optional };
+ DxvkExt khrWin32KeyedMutex = { VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME, DxvkExtMode::Optional };
DxvkExt khrPipelineLibrary = { VK_KHR_PIPELINE_LIBRARY_EXTENSION_NAME, DxvkExtMode::Optional };
DxvkExt khrPresentId = { VK_KHR_PRESENT_ID_EXTENSION_NAME, DxvkExtMode::Optional };
DxvkExt khrPresentWait = { VK_KHR_PRESENT_WAIT_EXTENSION_NAME, DxvkExtMode::Optional };