aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Ava/Program.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.Ava/Program.cs')
-rw-r--r--Ryujinx.Ava/Program.cs13
1 files changed, 12 insertions, 1 deletions
diff --git a/Ryujinx.Ava/Program.cs b/Ryujinx.Ava/Program.cs
index be27e9cd..4a546747 100644
--- a/Ryujinx.Ava/Program.cs
+++ b/Ryujinx.Ava/Program.cs
@@ -94,7 +94,6 @@ namespace Ryujinx.Ava
.With(new Ui.Vulkan.VulkanOptions()
{
ApplicationName = "Ryujinx.Graphics.Vulkan",
- VulkanVersion = new Version(1, 2),
MaxQueueCount = 2,
PreferDiscreteGpu = true,
PreferredDevice = !PreviewerDetached ? "" : ConfigurationState.Instance.Graphics.PreferredGpu.Value,
@@ -183,6 +182,18 @@ namespace Ryujinx.Ava
if (UseVulkan)
{
+ if (VulkanRenderer.GetPhysicalDevices().Length == 0)
+ {
+ UseVulkan = false;
+
+ ConfigurationState.Instance.Graphics.GraphicsBackend.Value = GraphicsBackend.OpenGl;
+
+ Logger.Warning?.PrintMsg(LogClass.Application, "A suitable Vulkan physical device is not available. Falling back to OpenGL");
+ }
+ }
+
+ if (UseVulkan)
+ {
// With a custom gpu backend, avalonia doesn't enable dpi awareness, so the backend must handle it. This isn't so for the opengl backed,
// as that uses avalonia's gpu backend and it's enabled there.
ForceDpiAware.Windows();