summaryrefslogtreecommitdiffstats
path: root/scene/3d/visual_instance_3d.h
diff options
context:
space:
mode:
authorreduz <reduzio@gmail.com>2020-12-17 15:56:59 -0300
committerJuan Linietsky <reduzio@gmail.com>2020-12-18 15:48:03 +0100
commitd2302f53d6ad80943e7f4245ac572003f1681d00 (patch)
treef1d46d8194f01e56cd3a4d042b9b33ba728c6f62 /scene/3d/visual_instance_3d.h
parent36b4e035dc7c410c29cda4446f8daa2e00a31da0 (diff)
downloadredot-engine-d2302f53d6ad80943e7f4245ac572003f1681d00.tar.gz
Implement automatic LOD (Level of Detail)
-Happens on import by default for all models -Just works (tm) -Biasing can be later adjusted per node or per viewport (as well as globally) -Disabled AABB.get_support test because its broken
Diffstat (limited to 'scene/3d/visual_instance_3d.h')
-rw-r--r--scene/3d/visual_instance_3d.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/scene/3d/visual_instance_3d.h b/scene/3d/visual_instance_3d.h
index 51bcb411da..0810b7b4ce 100644
--- a/scene/3d/visual_instance_3d.h
+++ b/scene/3d/visual_instance_3d.h
@@ -112,6 +112,8 @@ private:
float lod_min_hysteresis;
float lod_max_hysteresis;
+ float lod_bias;
+
mutable HashMap<StringName, Variant> instance_uniforms;
mutable HashMap<StringName, StringName> instance_uniform_property_remap;
@@ -151,6 +153,9 @@ public:
void set_extra_cull_margin(float p_margin);
float get_extra_cull_margin() const;
+ void set_lod_bias(float p_bias);
+ float get_lod_bias() const;
+
void set_gi_mode(GIMode p_mode);
GIMode get_gi_mode() const;