summaryrefslogtreecommitdiff
path: root/scene/3d/visual_instance.h
diff options
context:
space:
mode:
Diffstat (limited to 'scene/3d/visual_instance.h')
-rw-r--r--scene/3d/visual_instance.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/scene/3d/visual_instance.h b/scene/3d/visual_instance.h
index 4e652912c6..bbb49a2e78 100644
--- a/scene/3d/visual_instance.h
+++ b/scene/3d/visual_instance.h
@@ -78,6 +78,8 @@ public:
};
+class BakedLightInstance;
+
class GeometryInstance : public VisualInstance {
OBJ_TYPE( GeometryInstance, VisualInstance );
@@ -91,6 +93,7 @@ public:
FLAG_BILLBOARD_FIX_Y=VS::INSTANCE_FLAG_BILLBOARD_FIX_Y,
FLAG_DEPH_SCALE=VS::INSTANCE_FLAG_DEPH_SCALE,
FLAG_VISIBLE_IN_ALL_ROOMS=VS::INSTANCE_FLAG_VISIBLE_IN_ALL_ROOMS,
+ FLAG_USE_BAKED_LIGHT=VS::INSTANCE_FLAG_USE_BAKED_LIGHT,
FLAG_MAX=VS::INSTANCE_FLAG_MAX,
};
@@ -101,8 +104,15 @@ private:
Ref<Material> material_override;
float draw_begin;
float draw_end;
+ void _find_baked_light();
+ BakedLightInstance *baked_light_instance;
+ int baked_light_texture_id;
+
+ void _baked_light_changed();
+ void _update_visibility();
protected:
+ void _notification(int p_what);
static void _bind_methods();
public:
@@ -118,6 +128,9 @@ public:
void set_material_override(const Ref<Material>& p_material);
Ref<Material> get_material_override() const;
+ void set_baked_light_texture_id(int p_id);
+ int get_baked_light_texture_id() const;
+
GeometryInstance();
};