diff options
author | Saracen <SaracenOne@gmail.com> | 2016-03-07 23:00:55 +0000 |
---|---|---|
committer | Saracen <SaracenOne@gmail.com> | 2016-03-07 23:14:14 +0000 |
commit | 7fecebd8a8dc12e59c8fd430b9e3dc0069fd48d1 (patch) | |
tree | 668b6cc2cc7787711d3384f2308684bf5fc68e44 /servers/visual_server.h | |
parent | 20308c0475acb4678c9b86c7a4f210c1ec7548dc (diff) |
Added extra controls to GeometryInstances to control how they should cast shadows: double-sided and shadows only.
Conflicts:
servers/visual/visual_server_raster.h
Diffstat (limited to 'servers/visual_server.h')
-rw-r--r-- | servers/visual_server.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/servers/visual_server.h b/servers/visual_server.h index 4841720f41..bf689bd0a6 100644 --- a/servers/visual_server.h +++ b/servers/visual_server.h @@ -937,9 +937,19 @@ public: INSTANCE_FLAG_MAX }; + enum ShadowCastingSetting { + SHADOW_CASTING_SETTING_OFF, + SHADOW_CASTING_SETTING_ON, + SHADOW_CASTING_SETTING_DOUBLE_SIDED, + SHADOW_CASTING_SETTING_SHADOWS_ONLY, + }; + virtual void instance_geometry_set_flag(RID p_instance,InstanceFlags p_flags,bool p_enabled)=0; virtual bool instance_geometry_get_flag(RID p_instance,InstanceFlags p_flags) const=0; + virtual void instance_geometry_set_cast_shadows_setting(RID p_instance, ShadowCastingSetting p_shadow_casting_setting) = 0; + virtual ShadowCastingSetting instance_geometry_get_cast_shadows_setting(RID p_instance) const = 0; + virtual void instance_geometry_set_material_override(RID p_instance, RID p_material)=0; virtual RID instance_geometry_get_material_override(RID p_instance) const=0; |