|
@@ -5537,7 +5537,7 @@ RID RasterizerStorageGLES3::light_create(VS::LightType p_type) {
|
|
|
light->directional_blend_splits = false;
|
|
|
light->directional_range_mode = VS::LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_STABLE;
|
|
|
light->reverse_cull = false;
|
|
|
- light->use_gi = true;
|
|
|
+ light->bake_mode = VS::LIGHT_BAKE_INDIRECT;
|
|
|
light->version = 0;
|
|
|
|
|
|
return light_owner.make_rid(light);
|
|
@@ -5630,14 +5630,20 @@ void RasterizerStorageGLES3::light_set_reverse_cull_face_mode(RID p_light, bool
|
|
|
}
|
|
|
|
|
|
void RasterizerStorageGLES3::light_set_use_gi(RID p_light, bool p_enabled) {
|
|
|
+ WARN_DEPRECATED_MSG("'VisualServer.light_set_use_gi' is deprecated and will be removed in a future version. Use 'VisualServer.light_set_bake_mode' instead.");
|
|
|
+ light_set_bake_mode(p_light, p_enabled ? VS::LightBakeMode::LIGHT_BAKE_INDIRECT : VS::LightBakeMode::LIGHT_BAKE_DISABLED);
|
|
|
+}
|
|
|
+
|
|
|
+void RasterizerStorageGLES3::light_set_bake_mode(RID p_light, VS::LightBakeMode p_bake_mode) {
|
|
|
Light *light = light_owner.getornull(p_light);
|
|
|
ERR_FAIL_COND(!light);
|
|
|
|
|
|
- light->use_gi = p_enabled;
|
|
|
+ light->bake_mode = p_bake_mode;
|
|
|
|
|
|
light->version++;
|
|
|
light->instance_change_notify(true, false);
|
|
|
}
|
|
|
+
|
|
|
void RasterizerStorageGLES3::light_omni_set_shadow_mode(RID p_light, VS::LightOmniShadowMode p_mode) {
|
|
|
|
|
|
Light *light = light_owner.getornull(p_light);
|
|
@@ -5744,10 +5750,14 @@ Color RasterizerStorageGLES3::light_get_color(RID p_light) {
|
|
|
}
|
|
|
|
|
|
bool RasterizerStorageGLES3::light_get_use_gi(RID p_light) {
|
|
|
+ return light_get_bake_mode(p_light) != VS::LightBakeMode::LIGHT_BAKE_DISABLED;
|
|
|
+}
|
|
|
+
|
|
|
+VS::LightBakeMode RasterizerStorageGLES3::light_get_bake_mode(RID p_light) {
|
|
|
Light *light = light_owner.getornull(p_light);
|
|
|
- ERR_FAIL_COND_V(!light, false);
|
|
|
+ ERR_FAIL_COND_V(!light, VS::LightBakeMode::LIGHT_BAKE_DISABLED);
|
|
|
|
|
|
- return light->use_gi;
|
|
|
+ return light->bake_mode;
|
|
|
}
|
|
|
|
|
|
bool RasterizerStorageGLES3::light_has_shadow(RID p_light) const {
|