summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Ewald <cygon@nuclex.org>2018-03-04 14:20:59 +0100
committerMarkus Ewald <cygon@nuclex.org>2018-03-04 14:20:59 +0100
commitfc166f3ee1c48b1064e380219342cdd6e1cfb525 (patch)
tree295e0d3cec3fe8b0776cc32ee39a021538299f6e
parente619727e999ecd8e6883330f2c6950cd0624de99 (diff)
Implement VisualServerScene::instance_set_extra_visibility_margin() method to actually apply extra culling margin and mark instance AABB dirty
-rw-r--r--servers/visual/visual_server_scene.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/servers/visual/visual_server_scene.cpp b/servers/visual/visual_server_scene.cpp
index 0920fa748b..57364ff1af 100644
--- a/servers/visual/visual_server_scene.cpp
+++ b/servers/visual/visual_server_scene.cpp
@@ -730,6 +730,11 @@ void VisualServerScene::instance_set_exterior(RID p_instance, bool p_enabled) {
}
void VisualServerScene::instance_set_extra_visibility_margin(RID p_instance, real_t p_margin) {
+ Instance *instance = instance_owner.get(p_instance);
+ ERR_FAIL_COND(!instance);
+
+ instance->extra_margin = p_margin;
+ _instance_queue_update(instance, true, false);
}
Vector<ObjectID> VisualServerScene::instances_cull_aabb(const AABB &p_aabb, RID p_scenario) const {