summaryrefslogtreecommitdiff
path: root/scene/3d
diff options
context:
space:
mode:
authorJuan Linietsky <reduzio@gmail.com>2017-12-07 12:13:20 -0300
committerJuan Linietsky <reduzio@gmail.com>2017-12-07 12:13:20 -0300
commitdd892a327d39c6df71e5e447b30488d7694501b5 (patch)
tree98c91f2486acc3f8c65fd91e9541104e62ef66fb /scene/3d
parent561490261166a61718e80fe73bc112b8e3cf4b33 (diff)
Added some clean up in camera/viewport management. Fixes #12279, Fixes #12774
Diffstat (limited to 'scene/3d')
-rw-r--r--scene/3d/camera.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/scene/3d/camera.cpp b/scene/3d/camera.cpp
index abc4a03498..af210fff1c 100644
--- a/scene/3d/camera.cpp
+++ b/scene/3d/camera.cpp
@@ -191,11 +191,12 @@ void Camera::_update_camera() {
get_viewport()->_camera_transform_changed_notify();
*/
- if (is_inside_tree() && is_current()) {
- get_viewport()->_camera_transform_changed_notify();
- }
+ if (!is_inside_tree() || get_tree()->is_node_being_edited(this) || !is_current())
+ return;
+
+ get_viewport()->_camera_transform_changed_notify();
- if (is_current() && get_world().is_valid()) {
+ if (get_world().is_valid()) {
get_world()->_update_camera(this);
}
}