diff options
Diffstat (limited to 'scene/3d/reflection_probe.cpp')
-rw-r--r-- | scene/3d/reflection_probe.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/scene/3d/reflection_probe.cpp b/scene/3d/reflection_probe.cpp index 2e34f6aad0..b4dd6d09be 100644 --- a/scene/3d/reflection_probe.cpp +++ b/scene/3d/reflection_probe.cpp @@ -165,6 +165,15 @@ uint32_t ReflectionProbe::get_cull_mask() const { return cull_mask; } +void ReflectionProbe::set_reflection_mask(uint32_t p_layers) { + reflection_mask = p_layers; + RS::get_singleton()->reflection_probe_set_reflection_mask(probe, p_layers); +} + +uint32_t ReflectionProbe::get_reflection_mask() const { + return reflection_mask; +} + void ReflectionProbe::set_update_mode(UpdateMode p_mode) { update_mode = p_mode; RS::get_singleton()->reflection_probe_set_update_mode(probe, RS::ReflectionProbeUpdateMode(p_mode)); @@ -237,6 +246,9 @@ void ReflectionProbe::_bind_methods() { ClassDB::bind_method(D_METHOD("set_cull_mask", "layers"), &ReflectionProbe::set_cull_mask); ClassDB::bind_method(D_METHOD("get_cull_mask"), &ReflectionProbe::get_cull_mask); + ClassDB::bind_method(D_METHOD("set_reflection_mask", "layers"), &ReflectionProbe::set_reflection_mask); + ClassDB::bind_method(D_METHOD("get_reflection_mask"), &ReflectionProbe::get_reflection_mask); + ClassDB::bind_method(D_METHOD("set_update_mode", "mode"), &ReflectionProbe::set_update_mode); ClassDB::bind_method(D_METHOD("get_update_mode"), &ReflectionProbe::get_update_mode); @@ -249,6 +261,7 @@ void ReflectionProbe::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::BOOL, "interior"), "set_as_interior", "is_set_as_interior"); ADD_PROPERTY(PropertyInfo(Variant::BOOL, "enable_shadows"), "set_enable_shadows", "are_shadows_enabled"); ADD_PROPERTY(PropertyInfo(Variant::INT, "cull_mask", PROPERTY_HINT_LAYERS_3D_RENDER), "set_cull_mask", "get_cull_mask"); + ADD_PROPERTY(PropertyInfo(Variant::INT, "reflection_mask", PROPERTY_HINT_LAYERS_3D_RENDER), "set_reflection_mask", "get_reflection_mask"); ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "mesh_lod_threshold", PROPERTY_HINT_RANGE, "0,1024,0.1"), "set_mesh_lod_threshold", "get_mesh_lod_threshold"); ADD_GROUP("Ambient", "ambient_"); |