Merge pull request #66637 from clayjohn/mobile-renderer
Use mobile as the default rendering method on mobile when Vulkan is supported
This commit is contained in:
commit
a0d17380fd
|
@ -1986,7 +1986,7 @@
|
||||||
[b]Mobile[/b]: Modern renderer designed for mobile devices. Has a lower base overhead than Clustered, but does not scale as well to large scenes with many elements.
|
[b]Mobile[/b]: Modern renderer designed for mobile devices. Has a lower base overhead than Clustered, but does not scale as well to large scenes with many elements.
|
||||||
[b]Compatibility[/b]: Low-end renderer designed for older devices. Based on the limitations of the OpenGL 3.3/ OpenGL ES 3.0 / WebGL 2 APIs.
|
[b]Compatibility[/b]: Low-end renderer designed for older devices. Based on the limitations of the OpenGL 3.3/ OpenGL ES 3.0 / WebGL 2 APIs.
|
||||||
</member>
|
</member>
|
||||||
<member name="rendering/renderer/rendering_method.mobile" type="String" setter="" getter="" default=""forward_plus"">
|
<member name="rendering/renderer/rendering_method.mobile" type="String" setter="" getter="" default=""mobile"">
|
||||||
Override for [member rendering/renderer/rendering_method] on mobile devices.
|
Override for [member rendering/renderer/rendering_method] on mobile devices.
|
||||||
</member>
|
</member>
|
||||||
<member name="rendering/renderer/rendering_method.web" type="String" setter="" getter="" default=""gl_compatibility"">
|
<member name="rendering/renderer/rendering_method.web" type="String" setter="" getter="" default=""gl_compatibility"">
|
||||||
|
|
|
@ -710,6 +710,7 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
||||||
bool force_res = false;
|
bool force_res = false;
|
||||||
|
|
||||||
String default_renderer = "";
|
String default_renderer = "";
|
||||||
|
String default_renderer_mobile = "";
|
||||||
String renderer_hints = "";
|
String renderer_hints = "";
|
||||||
|
|
||||||
packed_data = PackedData::get_singleton();
|
packed_data = PackedData::get_singleton();
|
||||||
|
@ -1517,6 +1518,7 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
||||||
// Start with RenderingDevice-based backends. Should be included if any RD driver present.
|
// Start with RenderingDevice-based backends. Should be included if any RD driver present.
|
||||||
#ifdef VULKAN_ENABLED
|
#ifdef VULKAN_ENABLED
|
||||||
renderer_hints = "forward_plus,mobile";
|
renderer_hints = "forward_plus,mobile";
|
||||||
|
default_renderer_mobile = "mobile";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// And Compatibility next, or first if Vulkan is disabled.
|
// And Compatibility next, or first if Vulkan is disabled.
|
||||||
|
@ -1525,6 +1527,9 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
||||||
renderer_hints += ",";
|
renderer_hints += ",";
|
||||||
}
|
}
|
||||||
renderer_hints += "gl_compatibility";
|
renderer_hints += "gl_compatibility";
|
||||||
|
if (default_renderer_mobile.is_empty()) {
|
||||||
|
default_renderer_mobile = "gl_compatibility";
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
if (renderer_hints.is_empty()) {
|
if (renderer_hints.is_empty()) {
|
||||||
ERR_PRINT("No renderers available.");
|
ERR_PRINT("No renderers available.");
|
||||||
|
@ -1616,7 +1621,7 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
||||||
|
|
||||||
default_renderer = renderer_hints.get_slice(",", 0);
|
default_renderer = renderer_hints.get_slice(",", 0);
|
||||||
GLOBAL_DEF_RST_BASIC("rendering/renderer/rendering_method", default_renderer);
|
GLOBAL_DEF_RST_BASIC("rendering/renderer/rendering_method", default_renderer);
|
||||||
GLOBAL_DEF_RST_BASIC("rendering/renderer/rendering_method.mobile", default_renderer);
|
GLOBAL_DEF_RST_BASIC("rendering/renderer/rendering_method.mobile", default_renderer_mobile);
|
||||||
GLOBAL_DEF_RST_BASIC("rendering/renderer/rendering_method.web", "gl_compatibility"); // This is a bit of a hack until we have WebGPU support.
|
GLOBAL_DEF_RST_BASIC("rendering/renderer/rendering_method.web", "gl_compatibility"); // This is a bit of a hack until we have WebGPU support.
|
||||||
|
|
||||||
ProjectSettings::get_singleton()->set_custom_property_info("rendering/renderer/rendering_method",
|
ProjectSettings::get_singleton()->set_custom_property_info("rendering/renderer/rendering_method",
|
||||||
|
|
Loading…
Reference in New Issue