summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon
diff options
context:
space:
mode:
authorStenzek <stenzek@gmail.com>2018-05-31 04:23:45 -0700
committerStenzek <stenzek@gmail.com>2018-11-07 05:41:09 -0800
commit673f1963a068fb7d5cd8af9bb209c7633950e8f8 (patch)
tree1a14f48e96c8f58fe5e648282632e376cc711b24 /Source/Core/VideoCommon
parentc7a2b1572bba57d78bea78455f9cd1ab95cd36db (diff)
Vulkan: Support macOS via MoltenVK
The path to the MoltenVK library can be specified by the LIBMOLTENVK_PATH environment variable, otherwise it assumes it is located in the application bundle's Contents/MacOS directory.
Diffstat (limited to 'Source/Core/VideoCommon')
-rw-r--r--Source/Core/VideoCommon/DriverDetails.h29
-rw-r--r--Source/Core/VideoCommon/VideoBackendBase.cpp4
2 files changed, 15 insertions, 18 deletions
diff --git a/Source/Core/VideoCommon/DriverDetails.h b/Source/Core/VideoCommon/DriverDetails.h
index 7d60b0e168..12f4c56225 100644
--- a/Source/Core/VideoCommon/DriverDetails.h
+++ b/Source/Core/VideoCommon/DriverDetails.h
@@ -49,19 +49,20 @@ enum Vendor
enum Driver
{
DRIVER_ALL = 0,
- DRIVER_NVIDIA, // Official Nvidia, including mobile GPU
- DRIVER_NOUVEAU, // OSS nouveau
- DRIVER_ATI, // Official ATI
- DRIVER_R600, // OSS Radeon
- DRIVER_INTEL, // Official Intel
- DRIVER_I965, // OSS Intel
- DRIVER_ARM, // Official Mali driver
- DRIVER_LIMA, // OSS Mali driver
- DRIVER_QUALCOMM, // Official Adreno driver
- DRIVER_FREEDRENO, // OSS Adreno driver
- DRIVER_IMGTEC, // Official PowerVR driver
- DRIVER_VIVANTE, // Official Vivante driver
- DRIVER_UNKNOWN // Unknown driver, default to official hardware driver
+ DRIVER_NVIDIA, // Official Nvidia, including mobile GPU
+ DRIVER_NOUVEAU, // OSS nouveau
+ DRIVER_ATI, // Official ATI
+ DRIVER_R600, // OSS Radeon
+ DRIVER_INTEL, // Official Intel
+ DRIVER_I965, // OSS Intel
+ DRIVER_ARM, // Official Mali driver
+ DRIVER_LIMA, // OSS Mali driver
+ DRIVER_QUALCOMM, // Official Adreno driver
+ DRIVER_FREEDRENO, // OSS Adreno driver
+ DRIVER_IMGTEC, // Official PowerVR driver
+ DRIVER_VIVANTE, // Official Vivante driver
+ DRIVER_PORTABILITY, // Vulkan via Metal on macOS
+ DRIVER_UNKNOWN // Unknown driver, default to official hardware driver
};
enum class Family
@@ -283,4 +284,4 @@ void Init(API api, Vendor vendor, Driver driver, const double version, const Fam
// Once Vendor and driver version is set, this will return if it has the applicable bug passed to
// it.
bool HasBug(Bug bug);
-}
+} // namespace DriverDetails
diff --git a/Source/Core/VideoCommon/VideoBackendBase.cpp b/Source/Core/VideoCommon/VideoBackendBase.cpp
index 725857a85d..fd6bbdfa2b 100644
--- a/Source/Core/VideoCommon/VideoBackendBase.cpp
+++ b/Source/Core/VideoCommon/VideoBackendBase.cpp
@@ -25,9 +25,7 @@
#include "VideoBackends/Null/VideoBackend.h"
#include "VideoBackends/OGL/VideoBackend.h"
#include "VideoBackends/Software/VideoBackend.h"
-#ifndef __APPLE__
#include "VideoBackends/Vulkan/VideoBackend.h"
-#endif
#include "VideoCommon/AsyncRequests.h"
#include "VideoCommon/BPStructs.h"
@@ -187,9 +185,7 @@ void VideoBackendBase::PopulateList()
#ifdef _WIN32
g_available_video_backends.push_back(std::make_unique<DX11::VideoBackend>());
#endif
-#ifndef __APPLE__
g_available_video_backends.push_back(std::make_unique<Vulkan::VideoBackend>());
-#endif
g_available_video_backends.push_back(std::make_unique<SW::VideoSoftware>());
g_available_video_backends.push_back(std::make_unique<Null::VideoBackend>());