mirror of
https://git.eden-emu.dev/eden-emu/eden
synced 2026-04-09 22:58:54 +02:00
[vulkan] Adjusted VK_EXT_robustness2
This commit is contained in:
parent
b20773db0e
commit
636f4e4e4b
2 changed files with 20 additions and 6 deletions
|
|
@ -919,6 +919,17 @@ bool Device::GetSuitability(bool requires_swapchain) {
|
||||||
FOR_EACH_VK_FEATURE_EXT(FEATURE_EXTENSION);
|
FOR_EACH_VK_FEATURE_EXT(FEATURE_EXTENSION);
|
||||||
FOR_EACH_VK_EXTENSION(EXTENSION);
|
FOR_EACH_VK_EXTENSION(EXTENSION);
|
||||||
|
|
||||||
|
if (supported_extensions.contains(VK_KHR_ROBUSTNESS_2_EXTENSION_NAME)) {
|
||||||
|
loaded_extensions.erase(VK_EXT_ROBUSTNESS_2_EXTENSION_NAME);
|
||||||
|
loaded_extensions.insert(VK_KHR_ROBUSTNESS_2_EXTENSION_NAME);
|
||||||
|
extensions.robustness_2 = true;
|
||||||
|
} else if (supported_extensions.contains(VK_EXT_ROBUSTNESS_2_EXTENSION_NAME)) {
|
||||||
|
loaded_extensions.insert(VK_EXT_ROBUSTNESS_2_EXTENSION_NAME);
|
||||||
|
extensions.robustness_2 = true;
|
||||||
|
} else {
|
||||||
|
extensions.robustness_2 = false;
|
||||||
|
}
|
||||||
|
|
||||||
#undef FEATURE_EXTENSION
|
#undef FEATURE_EXTENSION
|
||||||
#undef EXTENSION
|
#undef EXTENSION
|
||||||
|
|
||||||
|
|
@ -1238,12 +1249,17 @@ void Device::RemoveUnsuitableExtensions() {
|
||||||
VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME);
|
VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME);
|
||||||
|
|
||||||
// VK_EXT_robustness2
|
// VK_EXT_robustness2
|
||||||
extensions.robustness_2 = features.robustness2.robustBufferAccess2 ||
|
features.robustness2.robustBufferAccess2 = VK_FALSE;
|
||||||
features.robustness2.robustImageAccess2 ||
|
features.robustness2.robustImageAccess2 = VK_FALSE;
|
||||||
features.robustness2.nullDescriptor;
|
extensions.robustness_2 = features.robustness2.nullDescriptor;
|
||||||
|
|
||||||
|
const char* robustness2_extension_name =
|
||||||
|
loaded_extensions.contains(VK_KHR_ROBUSTNESS_2_EXTENSION_NAME)
|
||||||
|
? VK_KHR_ROBUSTNESS_2_EXTENSION_NAME
|
||||||
|
: VK_EXT_ROBUSTNESS_2_EXTENSION_NAME;
|
||||||
|
|
||||||
RemoveExtensionFeatureIfUnsuitable(extensions.robustness_2, features.robustness2,
|
RemoveExtensionFeatureIfUnsuitable(extensions.robustness_2, features.robustness2,
|
||||||
VK_EXT_ROBUSTNESS_2_EXTENSION_NAME);
|
robustness2_extension_name);
|
||||||
|
|
||||||
// VK_EXT_image_robustness
|
// VK_EXT_image_robustness
|
||||||
extensions.image_robustness = features.image_robustness.robustImageAccess;
|
extensions.image_robustness = features.image_robustness.robustImageAccess;
|
||||||
|
|
|
||||||
|
|
@ -178,8 +178,6 @@ VK_DEFINE_HANDLE(VmaAllocator)
|
||||||
FEATURE_NAME(primitive_topology_list_restart, primitiveTopologyListRestart) \
|
FEATURE_NAME(primitive_topology_list_restart, primitiveTopologyListRestart) \
|
||||||
FEATURE_NAME(provoking_vertex, provokingVertexLast) \
|
FEATURE_NAME(provoking_vertex, provokingVertexLast) \
|
||||||
FEATURE_NAME(robustness2, nullDescriptor) \
|
FEATURE_NAME(robustness2, nullDescriptor) \
|
||||||
FEATURE_NAME(robustness2, robustBufferAccess2) \
|
|
||||||
FEATURE_NAME(robustness2, robustImageAccess2) \
|
|
||||||
FEATURE_NAME(shader_float16_int8, shaderFloat16) \
|
FEATURE_NAME(shader_float16_int8, shaderFloat16) \
|
||||||
FEATURE_NAME(shader_float16_int8, shaderInt8) \
|
FEATURE_NAME(shader_float16_int8, shaderInt8) \
|
||||||
FEATURE_NAME(timeline_semaphore, timelineSemaphore) \
|
FEATURE_NAME(timeline_semaphore, timelineSemaphore) \
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue