diff options
author | Juan Linietsky <reduzio@gmail.com> | 2017-08-19 20:06:40 -0300 |
---|---|---|
committer | Juan Linietsky <reduzio@gmail.com> | 2017-08-19 20:07:21 -0300 |
commit | 7e5890d23d882547ae465fb7756b74be5bc1f62b (patch) | |
tree | d9e2fa279f9c8ecb9cc2c57164416e9224f66a09 /servers/visual/visual_server_scene.cpp | |
parent | a80371ce0a2e0f5d64e3fa9b6bbf8dba75724164 (diff) | |
download | redot-engine-7e5890d23d882547ae465fb7756b74be5bc1f62b.tar.gz |
-Fix all shadow and culling related issues, fixes #9330
Diffstat (limited to 'servers/visual/visual_server_scene.cpp')
-rw-r--r-- | servers/visual/visual_server_scene.cpp | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/servers/visual/visual_server_scene.cpp b/servers/visual/visual_server_scene.cpp index ab32567d4f..fb298e3ed7 100644 --- a/servers/visual/visual_server_scene.cpp +++ b/servers/visual/visual_server_scene.cpp @@ -978,16 +978,6 @@ void VisualServerScene::instance_geometry_set_flag(RID p_instance, VS::InstanceF switch (p_flags) { - case VS::INSTANCE_FLAG_CAST_SHADOW: { - if (p_enabled == true) { - instance->cast_shadows = VS::SHADOW_CASTING_SETTING_ON; - } else { - instance->cast_shadows = VS::SHADOW_CASTING_SETTING_OFF; - } - - instance->base_material_changed(); // to actually compute if shadows are visible or not - - } break; case VS::INSTANCE_FLAG_VISIBLE_IN_ALL_ROOMS: { instance->visible_in_all_rooms = p_enabled; @@ -1001,6 +991,12 @@ void VisualServerScene::instance_geometry_set_flag(RID p_instance, VS::InstanceF } } void VisualServerScene::instance_geometry_set_cast_shadows_setting(RID p_instance, VS::ShadowCastingSetting p_shadow_casting_setting) { + + Instance *instance = instance_owner.get(p_instance); + ERR_FAIL_COND(!instance); + + instance->cast_shadows = p_shadow_casting_setting; + instance->base_material_changed(); // to actually compute if shadows are visible or not } void VisualServerScene::instance_geometry_set_material_override(RID p_instance, RID p_material) { |