Skip to content

Commit 4b644ed

Browse files
committed
Merge pull request godotengine#102341 from SheepYhangCN/rendering-driver-fallback-moltenvk
Implement Fallback to Vulkan for MoltenVK
2 parents c90fd7f + c0eec97 commit 4b644ed

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

doc/classes/ProjectSettings.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2982,8 +2982,8 @@
29822982
[b]Note:[/b] This setting is implemented only on Windows, Android, macOS, iOS, and Linux/X11.
29832983
</member>
29842984
<member name="rendering/rendering_device/fallback_to_vulkan" type="bool" setter="" getter="" default="true">
2985-
If [code]true[/code], the forward renderer will fall back to Vulkan if Direct3D 12 is not supported.
2986-
[b]Note:[/b] This setting is implemented only on Windows.
2985+
If [code]true[/code], the forward renderer will fall back to Vulkan if Direct3D 12 (on Windows) or Metal (on macOS x86_64) are not supported.
2986+
[b]Note:[/b] This setting is implemented only on Windows and macOS.
29872987
</member>
29882988
<member name="rendering/rendering_device/pipeline_cache/enable" type="bool" setter="" getter="" default="true">
29892989
Enable the pipeline cache that is saved to disk if the graphics API supports it.

platform/macos/display_server_macos.mm

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3785,6 +3785,14 @@
37853785

37863786
#if defined(RD_ENABLED)
37873787
#if defined(VULKAN_ENABLED)
3788+
#if defined(__x86_64__)
3789+
bool fallback_to_vulkan = GLOBAL_GET("rendering/rendering_device/fallback_to_vulkan");
3790+
// Metal rendering driver not available on Intel.
3791+
if (fallback_to_vulkan && rendering_driver == "metal") {
3792+
rendering_driver = "vulkan";
3793+
OS::get_singleton()->set_current_rendering_driver_name(rendering_driver);
3794+
}
3795+
#endif
37883796
if (rendering_driver == "vulkan") {
37893797
rendering_context = memnew(RenderingContextDriverVulkanMacOS);
37903798
}

0 commit comments

Comments
 (0)