aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.Vulkan/VulkanInitialization.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.Graphics.Vulkan/VulkanInitialization.cs')
-rw-r--r--Ryujinx.Graphics.Vulkan/VulkanInitialization.cs27
1 files changed, 21 insertions, 6 deletions
diff --git a/Ryujinx.Graphics.Vulkan/VulkanInitialization.cs b/Ryujinx.Graphics.Vulkan/VulkanInitialization.cs
index 68462825..fe9462aa 100644
--- a/Ryujinx.Graphics.Vulkan/VulkanInitialization.cs
+++ b/Ryujinx.Graphics.Vulkan/VulkanInitialization.cs
@@ -389,6 +389,18 @@ namespace Ryujinx.Graphics.Vulkan
features2.PNext = &featuresCustomBorderColorSupported;
}
+ PhysicalDeviceRobustness2FeaturesEXT supportedFeaturesRobustness2 = new PhysicalDeviceRobustness2FeaturesEXT()
+ {
+ SType = StructureType.PhysicalDeviceRobustness2FeaturesExt
+ };
+
+ if (supportedExtensions.Contains("VK_EXT_robustness2"))
+ {
+ supportedFeaturesRobustness2.PNext = features2.PNext;
+
+ features2.PNext = &supportedFeaturesRobustness2;
+ }
+
api.GetPhysicalDeviceFeatures2(physicalDevice, &features2);
var supportedFeatures = features2.Features;
@@ -428,14 +440,17 @@ namespace Ryujinx.Graphics.Vulkan
pExtendedFeatures = &featuresTransformFeedback;
- var featuresRobustness2 = new PhysicalDeviceRobustness2FeaturesEXT()
+ if (supportedExtensions.Contains("VK_EXT_robustness2"))
{
- SType = StructureType.PhysicalDeviceRobustness2FeaturesExt,
- PNext = pExtendedFeatures,
- NullDescriptor = true
- };
+ var featuresRobustness2 = new PhysicalDeviceRobustness2FeaturesEXT()
+ {
+ SType = StructureType.PhysicalDeviceRobustness2FeaturesExt,
+ PNext = pExtendedFeatures,
+ NullDescriptor = supportedFeaturesRobustness2.NullDescriptor
+ };
- pExtendedFeatures = &featuresRobustness2;
+ pExtendedFeatures = &featuresRobustness2;
+ }
var featuresExtendedDynamicState = new PhysicalDeviceExtendedDynamicStateFeaturesEXT()
{