b7b18a4940
- Tweak colors to be less saturated and more balanced (in terms of hue). The cool blue sky is balanced by a warm brown ground, which makes reflections look closer to how they'd look like when using an HDRI panorama texture. - Make the ground color dark on both ProceduralSkyMaterial and PhysicalSkyMaterial to reduce indoor light leaking, especially when using GI. - Tweak the PhysicalSkyMaterial colors to be as close as possible to ProceduralSkyMaterial (with the default sun orientation). - Tweak editor environment defaults to be identical to the default ProceduralSkyMaterial colors. Previously, the default editor sky color was different from the colors of a newly created ProceduralSkyMaterial resource. Both new skies were tested without GI, with SDFGI and with VoxelGI. They were tuned to look best when using ACES tonemapping with a whitepoint set to 6, but they still look good with other tonemapping operators.
48 lines
4 KiB
XML
48 lines
4 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<class name="PhysicalSkyMaterial" inherits="Material" version="4.0">
|
|
<brief_description>
|
|
[Sky] [Material] used for a physically based sky.
|
|
</brief_description>
|
|
<description>
|
|
The [PhysicalSkyMaterial] uses the Preetham analytic daylight model to draw a sky based on physical properties. This results in a substantially more realistic sky than the [ProceduralSkyMaterial], but it is slightly slower and less flexible.
|
|
The [PhysicalSkyMaterial] only supports one sun. The color, energy, and direction of the sun are taken from the first [DirectionalLight3D] in the scene tree.
|
|
As it is based on a daylight model, the sky fades to black as the sunset ends. If you want a full day/night cycle, you will have to add a night sky by converting this to a [ShaderMaterial] and adding a night sky directly into the resulting shader.
|
|
</description>
|
|
<tutorials>
|
|
</tutorials>
|
|
<members>
|
|
<member name="dither_strength" type="float" setter="set_dither_strength" getter="get_dither_strength" default="1.0">
|
|
Sets the amount of dithering to use. Dithering helps reduce banding that appears from the smooth changes in color in the sky. Use the lowest value possible, higher amounts may add fuzziness to the sky.
|
|
</member>
|
|
<member name="exposure" type="float" setter="set_exposure" getter="get_exposure" default="0.1">
|
|
Sets the exposure of the sky. Higher exposure values make the entire sky brighter.
|
|
</member>
|
|
<member name="ground_color" type="Color" setter="set_ground_color" getter="get_ground_color" default="Color(0.1, 0.07, 0.034, 1)">
|
|
Modulates the [Color] on the bottom half of the sky to represent the ground.
|
|
</member>
|
|
<member name="mie_coefficient" type="float" setter="set_mie_coefficient" getter="get_mie_coefficient" default="0.005">
|
|
Controls the strength of mie scattering for the sky. Mie scattering results from light colliding with larger particles (like water). On earth, mie scattering results in a whitish color around the sun and horizon.
|
|
</member>
|
|
<member name="mie_color" type="Color" setter="set_mie_color" getter="get_mie_color" default="Color(0.69, 0.729, 0.812, 1)">
|
|
Controls the [Color] of the mie scattering effect. While not physically accurate, this allows for the creation of alien-looking planets.
|
|
</member>
|
|
<member name="mie_eccentricity" type="float" setter="set_mie_eccentricity" getter="get_mie_eccentricity" default="0.8">
|
|
Controls the direction of the mie scattering. A value of [code]1[/code] means that when light hits a particle it's passing through straight forward. A value of [code]-1[/code] means that all light is scatter backwards.
|
|
</member>
|
|
<member name="night_sky" type="Texture2D" setter="set_night_sky" getter="get_night_sky">
|
|
[Texture2D] for the night sky. This is added to the sky, so if it is bright enough, it may be visible during the day.
|
|
</member>
|
|
<member name="rayleigh_coefficient" type="float" setter="set_rayleigh_coefficient" getter="get_rayleigh_coefficient" default="2.0">
|
|
Controls the strength of the Rayleigh scattering. Rayleigh scattering results from light colliding with small particles. It is responsible for the blue color of the sky.
|
|
</member>
|
|
<member name="rayleigh_color" type="Color" setter="set_rayleigh_color" getter="get_rayleigh_color" default="Color(0.3, 0.405, 0.6, 1)">
|
|
Controls the [Color] of the Rayleigh scattering. While not physically accurate, this allows for the creation of alien-looking planets. For example, setting this to a red [Color] results in a Mars-looking atmosphere with a corresponding blue sunset.
|
|
</member>
|
|
<member name="sun_disk_scale" type="float" setter="set_sun_disk_scale" getter="get_sun_disk_scale" default="1.0">
|
|
Sets the size of the sun disk. Default value is based on Sol's perceived size from Earth.
|
|
</member>
|
|
<member name="turbidity" type="float" setter="set_turbidity" getter="get_turbidity" default="10.0">
|
|
Sets the thickness of the atmosphere. High turbidity creates a foggy-looking atmosphere, while a low turbidity results in a clearer atmosphere.
|
|
</member>
|
|
</members>
|
|
</class>
|