Kaynağa Gözat

Macos moltenvk headers

Nick Majkic 2 yıl önce
ebeveyn
işleme
19c2b08ab4

+ 1 - 1
CMakeLists.txt

@@ -71,7 +71,7 @@ option(SUYU_ENABLE_PORTABLE "Allow suyu to enable portable mode if a user folder
 
 CMAKE_DEPENDENT_OPTION(SUYU_USE_FASTER_LD "Check if a faster linker is available" ON "NOT WIN32" OFF)
 
-CMAKE_DEPENDENT_OPTION(USE_SYSTEM_MOLTENVK "Use the system MoltenVK lib (instead of the bundled one)" OFF "APPLE" OFF)
+CMAKE_DEPENDENT_OPTION(USE_SYSTEM_MOLTENVK "Use the system MoltenVK lib (instead of the bundled one)" OFF "APPLE" ON)
 
 option(USE_CCACHE "Use CCache for faster building" ON)
 

+ 13 - 1
src/video_core/video_core.cpp

@@ -13,6 +13,7 @@
 #include "video_core/renderer_vulkan/renderer_vulkan.h"
 #include "video_core/video_core.h"
 
+
 namespace {
 
 std::unique_ptr<VideoCore::RendererBase> CreateRenderer(
@@ -21,9 +22,20 @@ std::unique_ptr<VideoCore::RendererBase> CreateRenderer(
     auto& device_memory = system.Host1x().MemoryManager();
 
     switch (Settings::values.renderer_backend.GetValue()) {
-    case Settings::RendererBackend::OpenGL:
+        #ifdef __APPLE__
+        // do nothing for now, include metal in here at later date.
+
+
+        #else
+
+        // openGL, not supported on Apple so not bothering to include if macos
+        case Settings::RendererBackend::OpenGL:
         return std::make_unique<OpenGL::RendererOpenGL>(emu_window, device_memory, gpu,
                                                         std::move(context));
+
+
+        #endif
+
     case Settings::RendererBackend::Vulkan:
         return std::make_unique<Vulkan::RendererVulkan>(emu_window, device_memory, gpu,
                                                         std::move(context));

+ 4 - 0
src/video_core/vulkan_common/vulkan.h

@@ -15,7 +15,11 @@
 #define VK_USE_PLATFORM_WAYLAND_KHR
 #endif
 
+#ifdef __APPLE__
+#include <MoltenVK/mvk_vulkan.h>
+#else
 #include <vulkan/vulkan.h>
+#endif
 
 // Sanitize macros
 #undef CreateEvent