29 #ifndef VISUAL_INSTANCE_H 30 #define VISUAL_INSTANCE_H 32 #include "scene/3d/spatial.h" 35 #include "scene/resources/material.h" 42 OBJ_CATEGORY(
"3D Visual Nodes");
48 RID _get_visual_instance_rid()
const;
54 void _notification(
int p_what);
55 static void _bind_methods();
65 RID get_instance()
const;
66 virtual AABB get_aabb()
const=0;
69 virtual AABB get_transformed_aabb()
const;
71 void set_base(
const RID& p_base);
73 void set_layer_mask(uint32_t p_mask);
74 uint32_t get_layer_mask()
const;
90 FLAG_VISIBLE=VS::INSTANCE_FLAG_VISIBLE,
91 FLAG_CAST_SHADOW=VS::INSTANCE_FLAG_CAST_SHADOW,
92 FLAG_RECEIVE_SHADOWS=VS::INSTANCE_FLAG_RECEIVE_SHADOWS,
93 FLAG_BILLBOARD=VS::INSTANCE_FLAG_BILLBOARD,
94 FLAG_BILLBOARD_FIX_Y=VS::INSTANCE_FLAG_BILLBOARD_FIX_Y,
95 FLAG_DEPH_SCALE=VS::INSTANCE_FLAG_DEPH_SCALE,
96 FLAG_VISIBLE_IN_ALL_ROOMS=VS::INSTANCE_FLAG_VISIBLE_IN_ALL_ROOMS,
97 FLAG_USE_BAKED_LIGHT=VS::INSTANCE_FLAG_USE_BAKED_LIGHT,
98 FLAG_MAX=VS::INSTANCE_FLAG_MAX,
104 bool flags[FLAG_MAX];
108 void _find_baked_light();
110 int baked_light_texture_id;
111 float extra_cull_margin;
113 void _baked_light_changed();
114 void _update_visibility();
117 void _notification(
int p_what);
118 static void _bind_methods();
121 void set_flag(Flags p_flag,
bool p_value);
122 bool get_flag(Flags p_flag)
const;
124 void set_draw_range_begin(
float p_dist);
125 float get_draw_range_begin()
const;
127 void set_draw_range_end(
float p_dist);
128 float get_draw_range_end()
const;
133 void set_baked_light_texture_id(
int p_id);
134 int get_baked_light_texture_id()
const;
136 void set_extra_cull_margin(
float p_margin);
137 float get_extra_cull_margin()
const;
142 VARIANT_ENUM_CAST( GeometryInstance::Flags );
Definition: baked_light_instance.h:10
Definition: visual_instance.h:84
Definition: visual_instance.h:39