A FogVolume covering the site carries a fog shader whose scattering albedo follows the same spectral transmittance as the seabed and whose density grows below the reference depth, so haze darkens and turns indigo with depth around every object; the global volumetric density moves into the volume and the far depth fog only covers what lies beyond 128 m. Sand ripples are bent by a slow domain warp, blended with a larger ripple scale and faded out between 40 and 60 m, which hides the 3.2 m tiling. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
101 lines
3.0 KiB
Plaintext
101 lines
3.0 KiB
Plaintext
[gd_scene load_steps=9 format=3]
|
|
|
|
[ext_resource type="Script" path="res://game/world/sites/dive_site.gd" id="1_site"]
|
|
[ext_resource type="Script" path="res://game/world/sites/bathymetric_terrain_actor.gd" id="2_terrain"]
|
|
[ext_resource type="Shader" path="res://game/world/sites/water_column_fog.gdshader" id="3_water_column"]
|
|
|
|
[sub_resource type="ShaderMaterial" id="WaterColumnMaterial"]
|
|
shader = ExtResource("3_water_column")
|
|
|
|
[sub_resource type="ProceduralSkyMaterial" id="SkyUnderwater"]
|
|
sky_top_color = Color(0.22, 0.52, 0.66, 1)
|
|
sky_horizon_color = Color(0.09, 0.28, 0.4, 1)
|
|
sky_curve = 0.2
|
|
sky_energy_multiplier = 1.0
|
|
ground_horizon_color = Color(0.05, 0.17, 0.27, 1)
|
|
ground_bottom_color = Color(0.01, 0.03, 0.07, 1)
|
|
ground_curve = 0.1
|
|
ground_energy_multiplier = 0.6
|
|
sun_angle_max = 40.0
|
|
sun_curve = 0.3
|
|
use_debanding = true
|
|
|
|
[sub_resource type="Sky" id="SkyResource"]
|
|
sky_material = SubResource("SkyUnderwater")
|
|
process_mode = 2
|
|
radiance_size = 2
|
|
|
|
[sub_resource type="Environment" id="EnvironmentUnderwater"]
|
|
background_mode = 2
|
|
sky = SubResource("SkyResource")
|
|
ambient_light_source = 3
|
|
ambient_light_sky_contribution = 1.0
|
|
ambient_light_energy = 1.3
|
|
reflected_light_source = 1
|
|
tonemap_mode = 2
|
|
tonemap_exposure = 1.15
|
|
tonemap_white = 4.0
|
|
ssao_enabled = true
|
|
ssao_radius = 2.5
|
|
ssao_intensity = 2.2
|
|
ssao_power = 1.6
|
|
ssao_detail = 0.6
|
|
ssao_horizon = 0.08
|
|
ssao_light_affect = 0.25
|
|
ssao_ao_channel_affect = 0.4
|
|
glow_enabled = true
|
|
glow_levels/1 = 1.0
|
|
glow_levels/2 = 1.0
|
|
glow_levels/3 = 0.6
|
|
glow_levels/4 = 0.2
|
|
glow_intensity = 0.8
|
|
glow_blend_mode = 0
|
|
glow_hdr_threshold = 1.2
|
|
fog_enabled = true
|
|
fog_light_color = Color(0.05, 0.18, 0.29, 1)
|
|
fog_light_energy = 0.38
|
|
fog_sun_scatter = 0.15
|
|
fog_density = 0.0045
|
|
fog_aerial_perspective = 0.5
|
|
fog_height = -4.0
|
|
fog_height_density = 0.025
|
|
volumetric_fog_enabled = true
|
|
volumetric_fog_density = 0.0
|
|
volumetric_fog_albedo = Color(0.5, 0.78, 0.92, 1)
|
|
volumetric_fog_anisotropy = 0.45
|
|
volumetric_fog_length = 128.0
|
|
volumetric_fog_detail_spread = 1.6
|
|
volumetric_fog_ambient_inject = 0.5
|
|
adjustment_enabled = true
|
|
adjustment_contrast = 1.06
|
|
adjustment_saturation = 1.08
|
|
|
|
[node name="DiveSite" type="Node3D"]
|
|
script = ExtResource("1_site")
|
|
|
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
|
environment = SubResource("EnvironmentUnderwater")
|
|
|
|
[node name="AmbientDirection" type="DirectionalLight3D" parent="."]
|
|
rotation_degrees = Vector3(-62, -28, 0)
|
|
light_color = Color(0.5, 0.78, 0.88, 1)
|
|
light_energy = 0.9
|
|
light_angular_distance = 3.0
|
|
shadow_enabled = true
|
|
shadow_opacity = 0.45
|
|
shadow_blur = 2.0
|
|
directional_shadow_max_distance = 160.0
|
|
directional_shadow_fade_start = 0.75
|
|
|
|
[node name="WaterColumn" type="FogVolume" parent="."]
|
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -110, 0)
|
|
size = Vector3(1800, 260, 1800)
|
|
material = SubResource("WaterColumnMaterial")
|
|
|
|
[node name="Terrain" type="StaticBody3D" parent="."]
|
|
unique_name_in_owner = true
|
|
script = ExtResource("2_terrain")
|
|
|
|
[node name="Placements" type="Node3D" parent="."]
|
|
unique_name_in_owner = true
|