aboutsummaryrefslogtreecommitdiff
path: root/servers/visual_server.h
diff options
context:
space:
mode:
authorJuan Linietsky2015-04-03 01:43:37 -0300
committerJuan Linietsky2015-04-03 01:43:37 -0300
commit9fa1698c7420bae2c6353bf300ce2cdb73434bf6 (patch)
tree7d67492203476b2599621ebe258987c94db79b88 /servers/visual_server.h
parent42d41a3fbc79ff1014d3b65666d6f80240520c8c (diff)
downloadgodot-9fa1698c7420bae2c6353bf300ce2cdb73434bf6.tar.gz
godot-9fa1698c7420bae2c6353bf300ce2cdb73434bf6.tar.zst
godot-9fa1698c7420bae2c6353bf300ce2cdb73434bf6.zip
Changes to Light
-=-=-=-=-=-=-=-= -Changed material unshaded property for an enum, which supports light-only shading -Added a "Mix" shading mode, useful for using lights as masks -Added energy parameter to Light2D
Diffstat (limited to '')
-rw-r--r--servers/visual_server.h19
1 files changed, 17 insertions, 2 deletions
diff --git a/servers/visual_server.h b/servers/visual_server.h
index b6d354454..e9425afba 100644
--- a/servers/visual_server.h
+++ b/servers/visual_server.h
@@ -1014,12 +1014,19 @@ public:
virtual void canvas_light_set_texture_offset(RID p_light, const Vector2& p_offset)=0;
virtual void canvas_light_set_color(RID p_light, const Color& p_color)=0;
virtual void canvas_light_set_height(RID p_light, float p_height)=0;
+ virtual void canvas_light_set_energy(RID p_light, float p_energy)=0;
virtual void canvas_light_set_z_range(RID p_light, int p_min_z,int p_max_z)=0;
virtual void canvas_light_set_layer_range(RID p_light, int p_min_layer,int p_max_layer)=0;
virtual void canvas_light_set_item_mask(RID p_light, int p_mask)=0;
virtual void canvas_light_set_item_shadow_mask(RID p_light, int p_mask)=0;
- virtual void canvas_light_set_subtract_mode(RID p_light, bool p_enable)=0;
+ enum CanvasLightMode {
+ CANVAS_LIGHT_MODE_ADD,
+ CANVAS_LIGHT_MODE_SUB,
+ CANVAS_LIGHT_MODE_MIX,
+ };
+
+ virtual void canvas_light_set_mode(RID p_light, CanvasLightMode p_mode)=0;
virtual void canvas_light_set_shadow_enabled(RID p_light, bool p_enabled)=0;
virtual void canvas_light_set_shadow_buffer_size(RID p_light, int p_size)=0;
virtual void canvas_light_set_shadow_esm_multiplier(RID p_light, float p_multiplier)=0;
@@ -1049,7 +1056,15 @@ public:
virtual void canvas_item_material_set_shader(RID p_material, RID p_shader)=0;
virtual void canvas_item_material_set_shader_param(RID p_material, const StringName& p_param, const Variant& p_value)=0;
virtual Variant canvas_item_material_get_shader_param(RID p_material, const StringName& p_param) const=0;
- virtual void canvas_item_material_set_unshaded(RID p_material, bool p_unshaded)=0;
+
+
+ enum CanvasItemShadingMode {
+ CANVAS_ITEM_SHADING_NORMAL,
+ CANVAS_ITEM_SHADING_UNSHADED,
+ CANVAS_ITEM_SHADING_ONLY_LIGHT,
+ };
+
+ virtual void canvas_item_material_set_shading_mode(RID p_material, CanvasItemShadingMode p_mode)=0;
/* CURSOR */
virtual void cursor_set_rotation(float p_rotation, int p_cursor = 0)=0; // radians