1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-10 13:00:37 +00:00

Change Server initialization order

* Registration of server classes happened after Display initialization.
* This made no sense in practice and avoided the registration of custom server drivers (like custom XR server, custom Rendering server, custom XR server).
* Initialization moved to _before_ Display.
This commit is contained in:
reduz
2022-05-26 14:51:42 +02:00
committed by Juan Linietsky
parent 162ec3431f
commit 54542ef3ec
3 changed files with 4 additions and 11 deletions

View File

@@ -411,8 +411,6 @@ Error Main::test_setup() {
initialize_modules(MODULE_INITIALIZATION_LEVEL_CORE); initialize_modules(MODULE_INITIALIZATION_LEVEL_CORE);
register_core_extensions(); register_core_extensions();
preregister_server_types();
register_core_singletons(); register_core_singletons();
/** INITIALIZE SERVERS **/ /** INITIALIZE SERVERS **/
@@ -1598,7 +1596,9 @@ Error Main::setup2(Thread::ID p_main_tid_override) {
tsman->add_interface(ts); tsman->add_interface(ts);
} }
preregister_server_types(); register_server_types();
initialize_modules(MODULE_INITIALIZATION_LEVEL_SERVERS);
NativeExtensionManager::get_singleton()->initialize_extensions(NativeExtension::INITIALIZATION_LEVEL_SERVERS);
// Print engine name and version // Print engine name and version
print_line(String(VERSION_NAME) + " v" + get_full_version_string() + " - " + String(VERSION_WEBSITE)); print_line(String(VERSION_NAME) + " v" + get_full_version_string() + " - " + String(VERSION_WEBSITE));
@@ -1763,10 +1763,6 @@ Error Main::setup2(Thread::ID p_main_tid_override) {
DisplayServer::get_singleton()->enable_for_stealing_focus(allow_focus_steal_pid); DisplayServer::get_singleton()->enable_for_stealing_focus(allow_focus_steal_pid);
} }
register_server_types();
initialize_modules(MODULE_INITIALIZATION_LEVEL_SERVERS);
NativeExtensionManager::get_singleton()->initialize_extensions(NativeExtension::INITIALIZATION_LEVEL_SERVERS);
MAIN_PRINT("Main: Load Boot Image"); MAIN_PRINT("Main: Load Boot Image");
Color clear = GLOBAL_DEF("rendering/environment/defaults/default_clear_color", Color(0.3, 0.3, 0.3)); Color clear = GLOBAL_DEF("rendering/environment/defaults/default_clear_color", Color(0.3, 0.3, 0.3));

View File

@@ -107,7 +107,7 @@ static bool has_server_feature_callback(const String &p_feature) {
return false; return false;
} }
void preregister_server_types() { void register_server_types() {
shader_types = memnew(ShaderTypes); shader_types = memnew(ShaderTypes);
GDREGISTER_CLASS(TextServerManager); GDREGISTER_CLASS(TextServerManager);
@@ -119,9 +119,7 @@ void preregister_server_types() {
GDREGISTER_NATIVE_STRUCT(CaretInfo, "Rect2 leading_caret;Rect2 trailing_caret;TextServer::Direction leading_direction;TextServer::Direction trailing_direction"); GDREGISTER_NATIVE_STRUCT(CaretInfo, "Rect2 leading_caret;Rect2 trailing_caret;TextServer::Direction leading_direction;TextServer::Direction trailing_direction");
Engine::get_singleton()->add_singleton(Engine::Singleton("TextServerManager", TextServerManager::get_singleton(), "TextServerManager")); Engine::get_singleton()->add_singleton(Engine::Singleton("TextServerManager", TextServerManager::get_singleton(), "TextServerManager"));
}
void register_server_types() {
OS::get_singleton()->set_has_server_feature_callback(has_server_feature_callback); OS::get_singleton()->set_has_server_feature_callback(has_server_feature_callback);
GDREGISTER_ABSTRACT_CLASS(DisplayServer); GDREGISTER_ABSTRACT_CLASS(DisplayServer);

View File

@@ -31,7 +31,6 @@
#ifndef REGISTER_SERVER_TYPES_H #ifndef REGISTER_SERVER_TYPES_H
#define REGISTER_SERVER_TYPES_H #define REGISTER_SERVER_TYPES_H
void preregister_server_types();
void register_server_types(); void register_server_types();
void unregister_server_types(); void unregister_server_types();