summaryrefslogtreecommitdiffstats
path: root/modules/openxr/openxr_interface.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'modules/openxr/openxr_interface.cpp')
-rw-r--r--modules/openxr/openxr_interface.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/modules/openxr/openxr_interface.cpp b/modules/openxr/openxr_interface.cpp
index fbbc61a91c..cce9c09361 100644
--- a/modules/openxr/openxr_interface.cpp
+++ b/modules/openxr/openxr_interface.cpp
@@ -651,6 +651,10 @@ bool OpenXRInterface::initialize() {
// make this our primary interface
xr_server->set_primary_interface(this);
+ // Register an additional output with the display server, so rendering won't
+ // be skipped if no windows are visible.
+ DisplayServer::get_singleton()->register_additional_output(this);
+
initialized = true;
return initialized;
@@ -674,6 +678,8 @@ void OpenXRInterface::uninitialize() {
}
}
+ DisplayServer::get_singleton()->unregister_additional_output(this);
+
initialized = false;
}