You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-05 12:10:55 +00:00
Merge pull request #102341 from SheepYhangCN/rendering-driver-fallback-moltenvk
Implement Fallback to Vulkan for MoltenVK
This commit is contained in:
@@ -2982,8 +2982,8 @@
|
|||||||
[b]Note:[/b] This setting is implemented only on Windows, Android, macOS, iOS, and Linux/X11.
|
[b]Note:[/b] This setting is implemented only on Windows, Android, macOS, iOS, and Linux/X11.
|
||||||
</member>
|
</member>
|
||||||
<member name="rendering/rendering_device/fallback_to_vulkan" type="bool" setter="" getter="" default="true">
|
<member name="rendering/rendering_device/fallback_to_vulkan" type="bool" setter="" getter="" default="true">
|
||||||
If [code]true[/code], the forward renderer will fall back to Vulkan if Direct3D 12 is not supported.
|
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.
|
||||||
[b]Note:[/b] This setting is implemented only on Windows.
|
[b]Note:[/b] This setting is implemented only on Windows and macOS.
|
||||||
</member>
|
</member>
|
||||||
<member name="rendering/rendering_device/pipeline_cache/enable" type="bool" setter="" getter="" default="true">
|
<member name="rendering/rendering_device/pipeline_cache/enable" type="bool" setter="" getter="" default="true">
|
||||||
Enable the pipeline cache that is saved to disk if the graphics API supports it.
|
Enable the pipeline cache that is saved to disk if the graphics API supports it.
|
||||||
|
|||||||
@@ -3785,6 +3785,14 @@ DisplayServerMacOS::DisplayServerMacOS(const String &p_rendering_driver, WindowM
|
|||||||
|
|
||||||
#if defined(RD_ENABLED)
|
#if defined(RD_ENABLED)
|
||||||
#if defined(VULKAN_ENABLED)
|
#if defined(VULKAN_ENABLED)
|
||||||
|
#if defined(__x86_64__)
|
||||||
|
bool fallback_to_vulkan = GLOBAL_GET("rendering/rendering_device/fallback_to_vulkan");
|
||||||
|
// Metal rendering driver not available on Intel.
|
||||||
|
if (fallback_to_vulkan && rendering_driver == "metal") {
|
||||||
|
rendering_driver = "vulkan";
|
||||||
|
OS::get_singleton()->set_current_rendering_driver_name(rendering_driver);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
if (rendering_driver == "vulkan") {
|
if (rendering_driver == "vulkan") {
|
||||||
rendering_context = memnew(RenderingContextDriverVulkanMacOS);
|
rendering_context = memnew(RenderingContextDriverVulkanMacOS);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user