Disable debug collision shapes in the editor

If the editor was started with --debug-collisions, 3d shapes were
displayed twice, both with the gizmo and debug shapes. Some shapes could
also persist after being removed due to the usage of queue_free() to
destroy the debug shapes.
This commit is contained in:
PouleyKetchoupp 2021-03-16 17:58:51 -07:00
parent 3ddab1c9d1
commit baf24b4503

View file

@ -30,6 +30,7 @@
#include "collision_object.h" #include "collision_object.h"
#include "core/engine.h"
#include "mesh_instance.h" #include "mesh_instance.h"
#include "scene/scene_string_names.h" #include "scene/scene_string_names.h"
#include "servers/physics_server.h" #include "servers/physics_server.h"
@ -143,7 +144,7 @@ void CollisionObject::_update_debug_shapes() {
} }
void CollisionObject::_update_shape_data(uint32_t p_owner) { void CollisionObject::_update_shape_data(uint32_t p_owner) {
if (is_inside_tree() && get_tree()->is_debugging_collisions_hint()) { if (is_inside_tree() && get_tree()->is_debugging_collisions_hint() && !Engine::get_singleton()->is_editor_hint()) {
if (debug_shapes_to_update.empty()) { if (debug_shapes_to_update.empty()) {
call_deferred("_update_debug_shapes"); call_deferred("_update_debug_shapes");
} }