diff options
| author | riperiperi <rhy3756547@hotmail.com> | 2024-09-01 21:33:11 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-09-01 17:33:11 -0300 |
| commit | 398fa1c238df75ee93f7106a578569f87cae8c0b (patch) | |
| tree | fb3235befaae16117d4e007bcacbceca5614de14 /src/Ryujinx.Graphics.Vulkan/MoltenVK/MVKInitialization.cs | |
| parent | 2c5c0392f9ff80a3907bbf376a13f797ebbc12cc (diff) | |
Vulkan: Update Silk.NET to 2.21 (#7266)
* Update Silk.NET version
* fix: add MoltenVK resolver workaround
fix: add MoltenVK resolver workaround
* Cleanup
* Readonly ref warnings
* Remove driver id todo
Diffstat (limited to 'src/Ryujinx.Graphics.Vulkan/MoltenVK/MVKInitialization.cs')
| -rw-r--r-- | src/Ryujinx.Graphics.Vulkan/MoltenVK/MVKInitialization.cs | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/Ryujinx.Graphics.Vulkan/MoltenVK/MVKInitialization.cs b/src/Ryujinx.Graphics.Vulkan/MoltenVK/MVKInitialization.cs index 457240aa..930d6b52 100644 --- a/src/Ryujinx.Graphics.Vulkan/MoltenVK/MVKInitialization.cs +++ b/src/Ryujinx.Graphics.Vulkan/MoltenVK/MVKInitialization.cs @@ -1,3 +1,4 @@ +using Silk.NET.Core.Loader; using Silk.NET.Vulkan; using System; using System.Runtime.InteropServices; @@ -8,6 +9,8 @@ namespace Ryujinx.Graphics.Vulkan.MoltenVK [SupportedOSPlatform("macos")] public static partial class MVKInitialization { + private const string VulkanLib = "libvulkan.dylib"; + [LibraryImport("libMoltenVK.dylib")] private static partial Result vkGetMoltenVKConfigurationMVK(IntPtr unusedInstance, out MVKConfiguration config, in IntPtr configSize); @@ -29,5 +32,20 @@ namespace Ryujinx.Graphics.Vulkan.MoltenVK vkSetMoltenVKConfigurationMVK(IntPtr.Zero, config, configSize); } + + private static string[] Resolver(string path) + { + if (path.EndsWith(VulkanLib)) + { + path = path[..^VulkanLib.Length] + "libMoltenVK.dylib"; + return [path]; + } + return Array.Empty<string>(); + } + + public static void InitializeResolver() + { + ((DefaultPathResolver)PathResolver.Default).Resolvers.Insert(0, Resolver); + } } } |
