diff options
author | Juan Linietsky <reduzio@gmail.com> | 2020-08-13 11:48:21 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-08-13 11:48:21 -0300 |
commit | d84b28b94f26db0ea115baf92662b09e6d6db67b (patch) | |
tree | a5a9d4a388b9913d098d058f06547de51e8dfeeb /servers/rendering_server.h | |
parent | 64d859df0c6ba51ea4c4841e0a1eb287c5079eae (diff) | |
parent | 079ca220e14669ef7c31c399985cd2c733af15bd (diff) |
Merge pull request #41213 from reduz/volumetric-fog
Added volumetric fog effect.
Diffstat (limited to 'servers/rendering_server.h')
-rw-r--r-- | servers/rendering_server.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/servers/rendering_server.h b/servers/rendering_server.h index 109e9e53c5..57af53f0c0 100644 --- a/servers/rendering_server.h +++ b/servers/rendering_server.h @@ -390,6 +390,7 @@ public: LIGHT_PARAM_SHADOW_BIAS, LIGHT_PARAM_SHADOW_PANCAKE_SIZE, LIGHT_PARAM_SHADOW_BLUR, + LIGHT_PARAM_SHADOW_VOLUMETRIC_FOG_FADE, LIGHT_PARAM_TRANSMITTANCE_BIAS, LIGHT_PARAM_MAX }; @@ -865,6 +866,19 @@ public: virtual void environment_set_fog_depth(RID p_env, bool p_enable, float p_depth_begin, float p_depth_end, float p_depth_curve, bool p_transmit, float p_transmit_curve) = 0; virtual void environment_set_fog_height(RID p_env, bool p_enable, float p_min_height, float p_max_height, float p_height_curve) = 0; + enum EnvVolumetricFogShadowFilter { + ENV_VOLUMETRIC_FOG_SHADOW_FILTER_DISABLED, + ENV_VOLUMETRIC_FOG_SHADOW_FILTER_LOW, + ENV_VOLUMETRIC_FOG_SHADOW_FILTER_MEDIUM, + ENV_VOLUMETRIC_FOG_SHADOW_FILTER_HIGH, + }; + + virtual void environment_set_volumetric_fog(RID p_env, bool p_enable, float p_density, const Color &p_light, float p_light_energy, float p_lenght, float p_detail_spread, float p_gi_inject, EnvVolumetricFogShadowFilter p_shadow_filter) = 0; + virtual void environment_set_volumetric_fog_volume_size(int p_size, int p_depth) = 0; + virtual void environment_set_volumetric_fog_filter_active(bool p_enable) = 0; + virtual void environment_set_volumetric_fog_directional_shadow_shrink_size(int p_shrink_size) = 0; + virtual void environment_set_volumetric_fog_positional_shadow_shrink_size(int p_shrink_size) = 0; + virtual Ref<Image> environment_bake_panorama(RID p_env, bool p_bake_irradiance, const Size2i &p_size) = 0; virtual void screen_space_roughness_limiter_set_active(bool p_enable, float p_amount, float p_limit) = 0; |