diff options
Diffstat (limited to 'Ryujinx.Graphics.Vulkan/VulkanInitialization.cs')
| -rw-r--r-- | Ryujinx.Graphics.Vulkan/VulkanInitialization.cs | 64 |
1 files changed, 19 insertions, 45 deletions
diff --git a/Ryujinx.Graphics.Vulkan/VulkanInitialization.cs b/Ryujinx.Graphics.Vulkan/VulkanInitialization.cs index d9dcc0b2..fe9462aa 100644 --- a/Ryujinx.Graphics.Vulkan/VulkanInitialization.cs +++ b/Ryujinx.Graphics.Vulkan/VulkanInitialization.cs @@ -162,6 +162,7 @@ namespace Ryujinx.Graphics.Vulkan if (messageSeverity.HasFlag(DebugUtilsMessageSeverityFlagsEXT.ErrorBitExt)) { Logger.Error?.Print(LogClass.Gpu, msg); + //throw new Exception(msg); } else if (messageSeverity.HasFlag(DebugUtilsMessageSeverityFlagsEXT.WarningBitExt)) { @@ -378,34 +379,14 @@ namespace Ryujinx.Graphics.Vulkan SType = StructureType.PhysicalDeviceFeatures2 }; - PhysicalDeviceVulkan11Features supportedFeaturesVk11 = new PhysicalDeviceVulkan11Features() + PhysicalDeviceCustomBorderColorFeaturesEXT featuresCustomBorderColorSupported = new PhysicalDeviceCustomBorderColorFeaturesEXT() { - SType = StructureType.PhysicalDeviceVulkan11Features, - PNext = features2.PNext - }; - - features2.PNext = &supportedFeaturesVk11; - - PhysicalDeviceCustomBorderColorFeaturesEXT supportedFeaturesCustomBorderColor = new PhysicalDeviceCustomBorderColorFeaturesEXT() - { - SType = StructureType.PhysicalDeviceCustomBorderColorFeaturesExt, - PNext = features2.PNext + SType = StructureType.PhysicalDeviceCustomBorderColorFeaturesExt }; if (supportedExtensions.Contains("VK_EXT_custom_border_color")) { - features2.PNext = &supportedFeaturesCustomBorderColor; - } - - PhysicalDeviceTransformFeedbackFeaturesEXT supportedFeaturesTransformFeedback = new PhysicalDeviceTransformFeedbackFeaturesEXT() - { - SType = StructureType.PhysicalDeviceTransformFeedbackFeaturesExt, - PNext = features2.PNext - }; - - if (supportedExtensions.Contains(ExtTransformFeedback.ExtensionName)) - { - features2.PNext = &supportedFeaturesTransformFeedback; + features2.PNext = &featuresCustomBorderColorSupported; } PhysicalDeviceRobustness2FeaturesEXT supportedFeaturesRobustness2 = new PhysicalDeviceRobustness2FeaturesEXT() @@ -427,48 +408,41 @@ namespace Ryujinx.Graphics.Vulkan var features = new PhysicalDeviceFeatures() { DepthBiasClamp = true, - DepthClamp = supportedFeatures.DepthClamp, - DualSrcBlend = supportedFeatures.DualSrcBlend, + DepthClamp = true, + DualSrcBlend = true, FragmentStoresAndAtomics = true, GeometryShader = supportedFeatures.GeometryShader, ImageCubeArray = true, IndependentBlend = true, LogicOp = supportedFeatures.LogicOp, - MultiViewport = supportedFeatures.MultiViewport, + MultiViewport = true, PipelineStatisticsQuery = supportedFeatures.PipelineStatisticsQuery, SamplerAnisotropy = true, ShaderClipDistance = true, ShaderFloat64 = supportedFeatures.ShaderFloat64, - ShaderImageGatherExtended = supportedFeatures.ShaderImageGatherExtended, + ShaderImageGatherExtended = true, ShaderStorageImageMultisample = supportedFeatures.ShaderStorageImageMultisample, // ShaderStorageImageReadWithoutFormat = true, // ShaderStorageImageWriteWithoutFormat = true, - TessellationShader = supportedFeatures.TessellationShader, + TessellationShader = true, VertexPipelineStoresAndAtomics = true, RobustBufferAccess = useRobustBufferAccess }; void* pExtendedFeatures = null; - PhysicalDeviceTransformFeedbackFeaturesEXT featuresTransformFeedback; - - if (supportedExtensions.Contains(ExtTransformFeedback.ExtensionName)) + var featuresTransformFeedback = new PhysicalDeviceTransformFeedbackFeaturesEXT() { - featuresTransformFeedback = new PhysicalDeviceTransformFeedbackFeaturesEXT() - { - SType = StructureType.PhysicalDeviceTransformFeedbackFeaturesExt, - PNext = pExtendedFeatures, - TransformFeedback = supportedFeaturesTransformFeedback.TransformFeedback - }; - - pExtendedFeatures = &featuresTransformFeedback; - } + SType = StructureType.PhysicalDeviceTransformFeedbackFeaturesExt, + PNext = pExtendedFeatures, + TransformFeedback = true + }; - PhysicalDeviceRobustness2FeaturesEXT featuresRobustness2; + pExtendedFeatures = &featuresTransformFeedback; if (supportedExtensions.Contains("VK_EXT_robustness2")) { - featuresRobustness2 = new PhysicalDeviceRobustness2FeaturesEXT() + var featuresRobustness2 = new PhysicalDeviceRobustness2FeaturesEXT() { SType = StructureType.PhysicalDeviceRobustness2FeaturesExt, PNext = pExtendedFeatures, @@ -491,7 +465,7 @@ namespace Ryujinx.Graphics.Vulkan { SType = StructureType.PhysicalDeviceVulkan11Features, PNext = pExtendedFeatures, - ShaderDrawParameters = supportedFeaturesVk11.ShaderDrawParameters + ShaderDrawParameters = true }; pExtendedFeatures = &featuresVk11; @@ -552,8 +526,8 @@ namespace Ryujinx.Graphics.Vulkan PhysicalDeviceCustomBorderColorFeaturesEXT featuresCustomBorderColor; if (supportedExtensions.Contains("VK_EXT_custom_border_color") && - supportedFeaturesCustomBorderColor.CustomBorderColors && - supportedFeaturesCustomBorderColor.CustomBorderColorWithoutFormat) + featuresCustomBorderColorSupported.CustomBorderColors && + featuresCustomBorderColorSupported.CustomBorderColorWithoutFormat) { featuresCustomBorderColor = new PhysicalDeviceCustomBorderColorFeaturesEXT() { |
