Browse Source

Merge pull request #101785 from FireCatMagic/rendering-server-environment-set-fog-depth

Expose RenderingServer::environment_set_fog_depth
Thaddeus Crews 5 months ago
parent
commit
21e818bc35
2 changed files with 11 additions and 0 deletions
  1. 10 0
      doc/classes/RenderingServer.xml
  2. 1 0
      servers/rendering_server.cpp

+ 10 - 0
doc/classes/RenderingServer.xml

@@ -1345,6 +1345,16 @@
 				Configures fog for the specified environment RID. See [code]fog_*[/code] properties in [Environment] for more information.
 			</description>
 		</method>
+		<method name="environment_set_fog_depth">
+			<return type="void" />
+			<param index="0" name="env" type="RID" />
+			<param index="1" name="curve" type="float" />
+			<param index="2" name="begin" type="float" />
+			<param index="3" name="end" type="float" />
+			<description>
+				Configures fog depth for the specified environment RID. Only has an effect when the fog mode of the environment is [constant ENV_FOG_MODE_DEPTH]. See [code]fog_depth_*[/code] properties in [Environment] for more information.
+			</description>
+		</method>
 		<method name="environment_set_glow">
 			<return type="void" />
 			<param index="0" name="env" type="RID" />

+ 1 - 0
servers/rendering_server.cpp

@@ -3026,6 +3026,7 @@ void RenderingServer::_bind_methods() {
 	ClassDB::bind_method(D_METHOD("environment_set_ssr", "env", "enable", "max_steps", "fade_in", "fade_out", "depth_tolerance"), &RenderingServer::environment_set_ssr);
 	ClassDB::bind_method(D_METHOD("environment_set_ssao", "env", "enable", "radius", "intensity", "power", "detail", "horizon", "sharpness", "light_affect", "ao_channel_affect"), &RenderingServer::environment_set_ssao);
 	ClassDB::bind_method(D_METHOD("environment_set_fog", "env", "enable", "light_color", "light_energy", "sun_scatter", "density", "height", "height_density", "aerial_perspective", "sky_affect", "fog_mode"), &RenderingServer::environment_set_fog, DEFVAL(RS::ENV_FOG_MODE_EXPONENTIAL));
+	ClassDB::bind_method(D_METHOD("environment_set_fog_depth", "env", "curve", "begin", "end"), &RenderingServer::environment_set_fog_depth);
 	ClassDB::bind_method(D_METHOD("environment_set_sdfgi", "env", "enable", "cascades", "min_cell_size", "y_scale", "use_occlusion", "bounce_feedback", "read_sky", "energy", "normal_bias", "probe_bias"), &RenderingServer::environment_set_sdfgi);
 	ClassDB::bind_method(D_METHOD("environment_set_volumetric_fog", "env", "enable", "density", "albedo", "emission", "emission_energy", "anisotropy", "length", "p_detail_spread", "gi_inject", "temporal_reprojection", "temporal_reprojection_amount", "ambient_inject", "sky_affect"), &RenderingServer::environment_set_volumetric_fog);