mirror of
https://github.com/godotengine/godot.git
synced 2025-12-08 06:09:55 +00:00
Portal occlusion culling
Adds support for occlusion culling via rooms and portals.
This commit is contained in:
parent
b0b2b7df31
commit
eb6f98ec55
78 changed files with 10865 additions and 45 deletions
|
|
@ -69,6 +69,7 @@
|
|||
#include "servers/physics_2d_server.h"
|
||||
#include "servers/physics_server.h"
|
||||
#include "servers/register_server_types.h"
|
||||
#include "servers/visual_server_callbacks.h"
|
||||
|
||||
#ifdef TOOLS_ENABLED
|
||||
#include "editor/doc/doc_data.h"
|
||||
|
|
@ -103,6 +104,8 @@ static CameraServer *camera_server = nullptr;
|
|||
static ARVRServer *arvr_server = nullptr;
|
||||
static PhysicsServer *physics_server = nullptr;
|
||||
static Physics2DServer *physics_2d_server = nullptr;
|
||||
static VisualServerCallbacks *visual_server_callbacks = nullptr;
|
||||
|
||||
// We error out if setup2() doesn't turn this true
|
||||
static bool _start_success = false;
|
||||
|
||||
|
|
@ -1452,6 +1455,10 @@ Error Main::setup2(Thread::ID p_main_tid_override) {
|
|||
if (use_debug_profiler && script_debugger) {
|
||||
script_debugger->profiling_start();
|
||||
}
|
||||
|
||||
visual_server_callbacks = memnew(VisualServerCallbacks);
|
||||
VisualServer::get_singleton()->callbacks_register(visual_server_callbacks);
|
||||
|
||||
_start_success = true;
|
||||
locale = String();
|
||||
|
||||
|
|
@ -2098,6 +2105,7 @@ bool Main::iteration() {
|
|||
if (OS::get_singleton()->get_main_loop()->idle(step * time_scale)) {
|
||||
exit = true;
|
||||
}
|
||||
visual_server_callbacks->flush();
|
||||
message_queue->flush();
|
||||
|
||||
VisualServer::get_singleton()->sync(); //sync if still drawing from previous frames.
|
||||
|
|
@ -2290,6 +2298,10 @@ void Main::cleanup(bool p_force) {
|
|||
message_queue->flush();
|
||||
memdelete(message_queue);
|
||||
|
||||
if (visual_server_callbacks) {
|
||||
memdelete(visual_server_callbacks);
|
||||
}
|
||||
|
||||
unregister_core_driver_types();
|
||||
unregister_core_types();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue