diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2024-02-13 17:24:15 +0100 |
---|---|---|
committer | Rémi Verschelde <rverschelde@gmail.com> | 2024-02-13 17:24:15 +0100 |
commit | b50001ecfe614d6fba2262ed65a7d036d57b3862 (patch) | |
tree | 8bd4d795d407055fb47bea39199ccd9eed106919 /platform/macos/rendering_context_driver_vulkan_macos.mm | |
parent | b36480684cc7a58f37ca325af635ee92d8502306 (diff) | |
parent | f4589434551e27c519515fdae15737582820bd65 (diff) | |
download | redot-engine-b50001ecfe614d6fba2262ed65a7d036d57b3862.tar.gz |
Merge pull request #87999 from bruvzg/metal_layer
[macOS / iOS] Switch Vulkan init to `VK_EXT_metal_surface` extension.
Diffstat (limited to 'platform/macos/rendering_context_driver_vulkan_macos.mm')
-rw-r--r-- | platform/macos/rendering_context_driver_vulkan_macos.mm | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/platform/macos/rendering_context_driver_vulkan_macos.mm b/platform/macos/rendering_context_driver_vulkan_macos.mm index e0f8bf9e67..afefe5a6f7 100644 --- a/platform/macos/rendering_context_driver_vulkan_macos.mm +++ b/platform/macos/rendering_context_driver_vulkan_macos.mm @@ -35,22 +35,22 @@ #ifdef USE_VOLK #include <volk.h> #else -#include <vulkan/vulkan.h> +#include <vulkan/vulkan_metal.h> #endif const char *RenderingContextDriverVulkanMacOS::_get_platform_surface_extension() const { - return VK_MVK_MACOS_SURFACE_EXTENSION_NAME; + return VK_EXT_METAL_SURFACE_EXTENSION_NAME; } RenderingContextDriver::SurfaceID RenderingContextDriverVulkanMacOS::surface_create(const void *p_platform_data) { const WindowPlatformData *wpd = (const WindowPlatformData *)(p_platform_data); - VkMacOSSurfaceCreateInfoMVK create_info = {}; - create_info.sType = VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK; - create_info.pView = (__bridge const void *)(*wpd->view_ptr); + VkMetalSurfaceCreateInfoEXT create_info = {}; + create_info.sType = VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT; + create_info.pLayer = *wpd->layer_ptr; VkSurfaceKHR vk_surface = VK_NULL_HANDLE; - VkResult err = vkCreateMacOSSurfaceMVK(instance_get(), &create_info, nullptr, &vk_surface); + VkResult err = vkCreateMetalSurfaceEXT(instance_get(), &create_info, nullptr, &vk_surface); ERR_FAIL_COND_V(err != VK_SUCCESS, SurfaceID()); Surface *surface = memnew(Surface); |