From ec56fb39b0d295d9636cb60e252088d7b23c7ac9 Mon Sep 17 00:00:00 2001 From: David Chavez Date: Fri, 14 Mar 2025 18:08:18 +0100 Subject: [PATCH] Add Metal as a renderer (#94) --- ultramodern/include/ultramodern/config.hpp | 1 + ultramodern/src/renderer_context.cpp | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/ultramodern/include/ultramodern/config.hpp b/ultramodern/include/ultramodern/config.hpp index 29c1fe9..a6af8e6 100644 --- a/ultramodern/include/ultramodern/config.hpp +++ b/ultramodern/include/ultramodern/config.hpp @@ -29,6 +29,7 @@ namespace ultramodern { Auto, D3D12, Vulkan, + Metal, OptionCount }; enum class AspectRatio { diff --git a/ultramodern/src/renderer_context.cpp b/ultramodern/src/renderer_context.cpp index 7fc5d26..8394a3c 100644 --- a/ultramodern/src/renderer_context.cpp +++ b/ultramodern/src/renderer_context.cpp @@ -51,8 +51,7 @@ std::string ultramodern::renderer::GraphicsConfig::get_graphics_api_name() const #elif defined(__gnu_linux__) api = ultramodern::renderer::GraphicsApi::Vulkan; #elif defined(__APPLE__) - // TODO: Add MoltenVK option for Mac? - api = ultramodern::renderer::GraphicsApi::Vulkan; + api = ultramodern::renderer::GraphicsApi::Metal; #else static_assert(false && "Unimplemented") #endif @@ -63,6 +62,8 @@ std::string ultramodern::renderer::GraphicsConfig::get_graphics_api_name() const return "D3D12"; case ultramodern::renderer::GraphicsApi::Vulkan: return "Vulkan"; + case ultramodern::renderer::GraphicsApi::Metal: + return "Metal"; default: return "[Unknown graphics API]"; }