[gd_scene load_steps=48 format=3 uid="uid://bao0ucik5eqtl"] [ext_resource type="Script" path="res://example/boujie_water_shader/water_shader_examples.gd" id="1_ksg8d"] [ext_resource type="PackedScene" uid="uid://ignpdv10rx52" path="res://addons/boujie_water_shader/prefabs/deep_ocean.tscn" id="2_h6v04"] [ext_resource type="Shader" path="res://example/boujie_water_shader/DropWithDistance.gdshader" id="3_qheyq"] [ext_resource type="Texture2D" uid="uid://dwsniss71hd03" path="res://example/boujie_water_shader/Sand.png" id="4_rbuuc"] [ext_resource type="Resource" uid="uid://bf2pvto4lly3o" path="res://example/boujie_water_shader/foam_waves/foam1.tres" id="5_2rnyq"] [ext_resource type="Script" path="res://example/boujie_water_shader/ocean_floor.gd" id="5_4yawx"] [ext_resource type="Resource" uid="uid://bavxgduu5sv2c" path="res://example/boujie_water_shader/height_waves/height1.tres" id="5_y6lkc"] [ext_resource type="Script" path="res://addons/boujie_water_shader/types/water_material_designer.gd" id="6_cmske"] [ext_resource type="Resource" uid="uid://1wsbw638p6o2" path="res://example/boujie_water_shader/foam_waves/foam2.tres" id="6_iku5k"] [ext_resource type="Resource" uid="uid://c33noe5oxh41i" path="res://example/boujie_water_shader/height_waves/height2.tres" id="6_pgu4w"] [ext_resource type="Resource" uid="uid://dp2iua60m7f8m" path="res://example/boujie_water_shader/uv_waves/uvwave1.tres" id="6_w87ec"] [ext_resource type="Resource" uid="uid://byfaqt1j16ysr" path="res://example/boujie_water_shader/foam_waves/foam3.tres" id="7_387wd"] [ext_resource type="Material" uid="uid://cvnsu7lttsfsh" path="res://addons/boujie_water_shader/prefabs/outset_ocean_material.tres" id="7_ch24e"] [ext_resource type="Resource" uid="uid://0hol4u8hadr8" path="res://example/boujie_water_shader/height_waves/height3.tres" id="7_ghjuj"] [ext_resource type="Resource" uid="uid://3g1mc132n1al" path="res://example/boujie_water_shader/uv_waves/uvwave2.tres" id="7_sjf3q"] [ext_resource type="Resource" uid="uid://c5j78g2giv011" path="res://example/boujie_water_shader/foam_waves/foam4.tres" id="8_m62v1"] [ext_resource type="Resource" uid="uid://cxeeuqlnw0v08" path="res://example/boujie_water_shader/height_waves/height4.tres" id="8_mnxd5"] [ext_resource type="Resource" uid="uid://d4jrd7iuain81" path="res://example/boujie_water_shader/height_waves/height5.tres" id="9_7wo7t"] [ext_resource type="Script" path="res://addons/boujie_water_shader/types/gerstner_wave.gd" id="9_408u1"] [ext_resource type="PackedScene" uid="uid://dn0ukrkqrpmne" path="res://example/boujie_water_shader/obelisk/obelisk.tscn" id="9_qosoy"] [ext_resource type="PackedScene" uid="uid://cuagegibp4wcj" path="res://example/boujie_water_shader/pedestal/pedestal.tscn" id="10_70j47"] [ext_resource type="Environment" uid="uid://kw5c7bat248e" path="res://example/boujie_water_shader/MapEnvironment.tres" id="14_o2bkd"] [ext_resource type="Material" uid="uid://b17lc50fphxnr" path="res://addons/boujie_water_shader/prefabs/ice_material.tres" id="19_3bkn5"] [ext_resource type="Material" uid="uid://dcwd8ciggcoqu" path="res://addons/boujie_water_shader/prefabs/obsidian_material.tres" id="21_wltbb"] [ext_resource type="ArrayMesh" uid="uid://b8sapw7ttyhru" path="res://example/boujie_water_shader/subdivcube.obj" id="22_7a0j4"] [ext_resource type="Script" path="res://example/boujie_water_shader/camera.gd" id="22_vw7uu"] [ext_resource type="Script" path="res://example/boujie_water_shader/underwater_fog.gd" id="24_pmq8u"] [ext_resource type="Material" uid="uid://cu46b100244nd" path="res://addons/boujie_water_shader/prefabs/deep_ocean_material.tres" id="26_13rch"] [ext_resource type="Script" path="res://example/boujie_water_shader/visibility_range_lod_group.gd" id="28_fslxr"] [ext_resource type="Texture2D" uid="uid://3kpp1l04oqfu" path="res://example/boujie_water_shader/obelisk/StoneFloorTexture.png" id="29_g6865"] [ext_resource type="Script" path="res://example/boujie_water_shader/hud.gd" id="34_3qn7y"] [ext_resource type="Script" path="res://example/boujie_water_shader/fps_counter.gd" id="35_g2n63"] [ext_resource type="ArrayMesh" uid="uid://f85dvooifh0c" path="res://example/boujie_water_shader/mountains.obj" id="37_ujihb"] [ext_resource type="Material" uid="uid://c7phyredymkgu" path="res://example/boujie_water_shader/mountain_material.tres" id="38_hsxek"] [sub_resource type="PlaneMesh" id="PlaneMesh_mv30r"] subdivide_width = 16 subdivide_depth = 16 [sub_resource type="ShaderMaterial" id="ShaderMaterial_0bbsx"] render_priority = 0 shader = ExtResource("3_qheyq") shader_parameter/albedo = Color(1, 1, 1, 1) shader_parameter/point_size = 1.0 shader_parameter/roughness = 1.0 shader_parameter/metallic_texture_channel = null shader_parameter/specular = 0.5 shader_parameter/metallic = null shader_parameter/uv1_blend_sharpness = 1.0 shader_parameter/uv1_scale = Vector3(0.1, 0.1, 0.1) shader_parameter/uv1_offset = null shader_parameter/uv2_scale = Vector3(1, 1, 1) shader_parameter/uv2_offset = null shader_parameter/drop_far = 2000.0 shader_parameter/texture_albedo = ExtResource("4_rbuuc") [sub_resource type="Resource" id="Resource_4vniv"] script = ExtResource("9_408u1") steepness = 0.8 amplitude = 0.5 direction_degrees = 0.0 frequency = 0.2 speed = 1.0 phase_degrees = 0.0 [sub_resource type="Resource" id="Resource_3t55w"] script = ExtResource("9_408u1") steepness = 0.18 amplitude = 0.7 direction_degrees = 315.0 frequency = 0.6 speed = 3.0 phase_degrees = 0.0 [sub_resource type="Resource" id="Resource_ll6tv"] script = ExtResource("9_408u1") steepness = 0.16 amplitude = 0.5 direction_degrees = 90.0 frequency = 0.4 speed = 1.5 phase_degrees = 0.0 [sub_resource type="Resource" id="Resource_3bkrw"] script = ExtResource("9_408u1") steepness = 0.4 amplitude = 1.0 direction_degrees = 150.0 frequency = 0.6 speed = 1.6 phase_degrees = 0.0 [sub_resource type="Resource" id="Resource_qrrly"] script = ExtResource("9_408u1") steepness = 0.2 amplitude = 0.4 direction_degrees = 225.0 frequency = 0.5 speed = 1.0 phase_degrees = 0.0 [sub_resource type="FogMaterial" id="FogMaterial_irst1"] density = 0.3558 albedo = Color(0.301961, 0.603922, 1, 1) height_falloff = 1e+06 edge_fade = 0.926824 [sub_resource type="SphereMesh" id="SphereMesh_68awl"] radius = 20.0 height = 40.0 [sub_resource type="BoxMesh" id="BoxMesh_ehcfp"] size = Vector3(30, 30, 30) subdivide_width = 16 subdivide_height = 16 subdivide_depth = 16 [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_kaxio"] albedo_texture = ExtResource("29_g6865") [sub_resource type="BoxMesh" id="BoxMesh_6pj3g"] material = SubResource("StandardMaterial3D_kaxio") [sub_resource type="SphereMesh" id="SphereMesh_ljix4"] radius = 80.0 height = 160.0 [node name="WaterShaderExamples" type="Node3D"] script = ExtResource("1_ksg8d") [node name="DeepOcean" parent="." instance=ExtResource("2_h6v04")] far_edge = 4000 [node name="WaterMaterialDesigner" parent="DeepOcean" index="1"] wave_fade_far = 1440 [node name="OceanFloor" type="MeshInstance3D" parent="DeepOcean"] transform = Transform3D(8000, 0, 0, 0, 1, 0, 0, 0, 8000, 0, -350, 0) mesh = SubResource("PlaneMesh_mv30r") skeleton = NodePath("../../Other_Designers") surface_material_override/0 = SubResource("ShaderMaterial_0bbsx") script = ExtResource("5_4yawx") [node name="Other_Designers" type="Node" parent="."] [node name="OutsetOceanDesigner" type="Node" parent="Other_Designers"] script = ExtResource("6_cmske") material = ExtResource("7_ch24e") distance_fade_far = 4000 distance_fade_softness = 0.323 wave_fade_far = 2000 wave_fade_softness = 0.641 height_waves = Array[ExtResource("9_408u1")]([ExtResource("5_y6lkc"), ExtResource("6_pgu4w"), ExtResource("7_ghjuj"), ExtResource("8_mnxd5"), ExtResource("9_7wo7t")]) foam_waves = Array[ExtResource("9_408u1")]([ExtResource("5_2rnyq"), ExtResource("6_iku5k"), ExtResource("7_387wd"), ExtResource("8_m62v1")]) uv_waves = Array[ExtResource("9_408u1")]([ExtResource("6_w87ec"), ExtResource("7_sjf3q")]) [node name="IceDesigner" type="Node" parent="Other_Designers"] script = ExtResource("6_cmske") material = ExtResource("19_3bkn5") distance_fade_far = 4000 distance_fade_softness = 0.323 wave_fade_far = 2000 wave_fade_softness = 0.641 height_waves = Array[ExtResource("9_408u1")]([SubResource("Resource_4vniv"), SubResource("Resource_3t55w"), SubResource("Resource_ll6tv"), SubResource("Resource_3bkrw"), SubResource("Resource_qrrly")]) foam_waves = Array[ExtResource("9_408u1")]([ExtResource("5_2rnyq"), ExtResource("6_iku5k"), ExtResource("7_387wd"), ExtResource("8_m62v1")]) uv_waves = Array[ExtResource("9_408u1")]([ExtResource("6_w87ec"), ExtResource("7_sjf3q")]) [node name="ObsidianDesigner" type="Node" parent="Other_Designers"] script = ExtResource("6_cmske") material = ExtResource("21_wltbb") distance_fade_far = 4000 distance_fade_softness = 0.323 wave_fade_far = 2000 wave_fade_softness = 0.641 height_waves = Array[ExtResource("9_408u1")]([SubResource("Resource_4vniv"), SubResource("Resource_3t55w"), SubResource("Resource_ll6tv"), SubResource("Resource_3bkrw"), SubResource("Resource_qrrly")]) uv_waves = Array[ExtResource("9_408u1")]([ExtResource("6_w87ec"), ExtResource("7_sjf3q")]) [node name="Camera" type="Camera3D" parent="."] transform = Transform3D(1, 0, 0, 0, 0.996309, 0.085834, 0, -0.085834, 0.996309, 0, 21.4225, 49.9367) script = ExtResource("22_vw7uu") [node name="Environment_Stuff" type="Node" parent="."] [node name="DirectionalLight3D" type="DirectionalLight3D" parent="Environment_Stuff"] transform = Transform3D(0.877037, -0.278375, 0.391552, 0, 0.815017, 0.579437, -0.480422, -0.508188, 0.7148, 0, 23.7697, 0) light_energy = 1.2 shadow_enabled = true directional_shadow_max_distance = 2000.0 [node name="WorldEnvironment" type="WorldEnvironment" parent="Environment_Stuff"] environment = ExtResource("14_o2bkd") [node name="UnderwaterFog" type="FogVolume" parent="Environment_Stuff"] visible = false shape = 4 material = SubResource("FogMaterial_irst1") script = ExtResource("24_pmq8u") visible_height_offset = 5.0 [node name="HUD" type="Control" parent="."] layout_mode = 3 anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 offset_left = 9.0 offset_top = 6.0 offset_right = -566.0 offset_bottom = -9.0 grow_horizontal = 2 grow_vertical = 2 script = ExtResource("34_3qn7y") [node name="VBoxContainer" type="VBoxContainer" parent="HUD"] layout_mode = 1 anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 [node name="FPSCounter" type="Label" parent="HUD/VBoxContainer"] layout_mode = 2 text = "FPS Unknown" script = ExtResource("35_g2n63") [node name="Help" type="Label" parent="HUD/VBoxContainer"] layout_mode = 2 text = "Controls -------- Arrow keys to move Page Up, Page Down to increase/decrease camera far distance Enter binds and unbinds the mouse. Tab shows/hides this help screen. ESC to quit" [node name="VisibilityRangeLodGroup" type="Node3D" parent="."] script = ExtResource("28_fslxr") [node name="Test_Terrain" type="Node3D" parent="VisibilityRangeLodGroup"] [node name="Mountain" type="MeshInstance3D" parent="VisibilityRangeLodGroup/Test_Terrain"] transform = Transform3D(44.2152, 0, 23.3456, 0, 50, 0, -23.3456, 0, 44.2152, -581.271, -352.535, -1693.11) mesh = ExtResource("37_ujihb") skeleton = NodePath("../../..") surface_material_override/0 = ExtResource("38_hsxek") surface_material_override/1 = ExtResource("38_hsxek") surface_material_override/2 = ExtResource("38_hsxek") surface_material_override/3 = ExtResource("38_hsxek") surface_material_override/4 = ExtResource("38_hsxek") surface_material_override/5 = ExtResource("38_hsxek") surface_material_override/6 = ExtResource("38_hsxek") surface_material_override/7 = ExtResource("38_hsxek") surface_material_override/8 = ExtResource("38_hsxek") surface_material_override/9 = ExtResource("38_hsxek") surface_material_override/10 = ExtResource("38_hsxek") surface_material_override/11 = ExtResource("38_hsxek") surface_material_override/12 = ExtResource("38_hsxek") surface_material_override/13 = ExtResource("38_hsxek") surface_material_override/14 = ExtResource("38_hsxek") surface_material_override/15 = ExtResource("38_hsxek") surface_material_override/16 = ExtResource("38_hsxek") surface_material_override/17 = ExtResource("38_hsxek") [node name="Mountain2" type="MeshInstance3D" parent="VisibilityRangeLodGroup/Test_Terrain"] transform = Transform3D(22.9294, 0, -44.4325, 0, 50, 0, 44.4325, 0, 22.9294, -1339.75, -454.422, -2614.41) mesh = ExtResource("37_ujihb") skeleton = NodePath("../../..") surface_material_override/0 = ExtResource("38_hsxek") surface_material_override/1 = ExtResource("38_hsxek") surface_material_override/2 = ExtResource("38_hsxek") surface_material_override/3 = ExtResource("38_hsxek") surface_material_override/4 = ExtResource("38_hsxek") surface_material_override/5 = ExtResource("38_hsxek") surface_material_override/6 = ExtResource("38_hsxek") surface_material_override/7 = ExtResource("38_hsxek") surface_material_override/8 = ExtResource("38_hsxek") surface_material_override/9 = ExtResource("38_hsxek") surface_material_override/10 = ExtResource("38_hsxek") surface_material_override/11 = ExtResource("38_hsxek") surface_material_override/12 = ExtResource("38_hsxek") surface_material_override/13 = ExtResource("38_hsxek") surface_material_override/14 = ExtResource("38_hsxek") surface_material_override/15 = ExtResource("38_hsxek") surface_material_override/16 = ExtResource("38_hsxek") surface_material_override/17 = ExtResource("38_hsxek") [node name="Mountain3" type="MeshInstance3D" parent="VisibilityRangeLodGroup/Test_Terrain"] transform = Transform3D(8.84072, 0, -24.0371, 0, 51.932, 0, 17.1315, 0, 12.4044, -331.45, -363.533, -3265.27) mesh = ExtResource("37_ujihb") skeleton = NodePath("../../..") surface_material_override/0 = ExtResource("38_hsxek") surface_material_override/1 = ExtResource("38_hsxek") surface_material_override/2 = ExtResource("38_hsxek") surface_material_override/3 = ExtResource("38_hsxek") surface_material_override/4 = ExtResource("38_hsxek") surface_material_override/5 = ExtResource("38_hsxek") surface_material_override/6 = ExtResource("38_hsxek") surface_material_override/7 = ExtResource("38_hsxek") surface_material_override/8 = ExtResource("38_hsxek") surface_material_override/9 = ExtResource("38_hsxek") surface_material_override/10 = ExtResource("38_hsxek") surface_material_override/11 = ExtResource("38_hsxek") surface_material_override/12 = ExtResource("38_hsxek") surface_material_override/13 = ExtResource("38_hsxek") surface_material_override/14 = ExtResource("38_hsxek") surface_material_override/15 = ExtResource("38_hsxek") surface_material_override/16 = ExtResource("38_hsxek") surface_material_override/17 = ExtResource("38_hsxek") [node name="Mountain4" type="MeshInstance3D" parent="VisibilityRangeLodGroup/Test_Terrain"] transform = Transform3D(15.0669, 0, 16.8743, 0, 62.8956, 0, -12.0265, 0, 21.1403, -49.5768, -363.533, -3351.75) mesh = ExtResource("37_ujihb") skeleton = NodePath("../../..") surface_material_override/0 = ExtResource("38_hsxek") surface_material_override/1 = ExtResource("38_hsxek") surface_material_override/2 = ExtResource("38_hsxek") surface_material_override/3 = ExtResource("38_hsxek") surface_material_override/4 = ExtResource("38_hsxek") surface_material_override/5 = ExtResource("38_hsxek") surface_material_override/6 = ExtResource("38_hsxek") surface_material_override/7 = ExtResource("38_hsxek") surface_material_override/8 = ExtResource("38_hsxek") surface_material_override/9 = ExtResource("38_hsxek") surface_material_override/10 = ExtResource("38_hsxek") surface_material_override/11 = ExtResource("38_hsxek") surface_material_override/12 = ExtResource("38_hsxek") surface_material_override/13 = ExtResource("38_hsxek") surface_material_override/14 = ExtResource("38_hsxek") surface_material_override/15 = ExtResource("38_hsxek") surface_material_override/16 = ExtResource("38_hsxek") surface_material_override/17 = ExtResource("38_hsxek") [node name="Mountain5" type="MeshInstance3D" parent="VisibilityRangeLodGroup/Test_Terrain"] transform = Transform3D(2.67668, 0, -26.7871, 0, 87.917, 0, 19.0914, 0, 3.75563, -280.898, -363.533, -3633.61) mesh = ExtResource("37_ujihb") skeleton = NodePath("../../..") surface_material_override/0 = ExtResource("38_hsxek") surface_material_override/1 = ExtResource("38_hsxek") surface_material_override/2 = ExtResource("38_hsxek") surface_material_override/3 = ExtResource("38_hsxek") surface_material_override/4 = ExtResource("38_hsxek") surface_material_override/5 = ExtResource("38_hsxek") surface_material_override/6 = ExtResource("38_hsxek") surface_material_override/7 = ExtResource("38_hsxek") surface_material_override/8 = ExtResource("38_hsxek") surface_material_override/9 = ExtResource("38_hsxek") surface_material_override/10 = ExtResource("38_hsxek") surface_material_override/11 = ExtResource("38_hsxek") surface_material_override/12 = ExtResource("38_hsxek") surface_material_override/13 = ExtResource("38_hsxek") surface_material_override/14 = ExtResource("38_hsxek") surface_material_override/15 = ExtResource("38_hsxek") surface_material_override/16 = ExtResource("38_hsxek") surface_material_override/17 = ExtResource("38_hsxek") [node name="Material_Testers" type="Node3D" parent="VisibilityRangeLodGroup"] [node name="Pedestal1" parent="VisibilityRangeLodGroup/Material_Testers" instance=ExtResource("10_70j47")] transform = Transform3D(8, 0, 0, 0, 8, 0, 0, 0, 8, -120, 0, 0) [node name="DeepOceanSphere" type="MeshInstance3D" parent="VisibilityRangeLodGroup/Material_Testers/Pedestal1"] transform = Transform3D(0.0836411, -0.0928929, 0, 0.0928929, 0.0836411, 0, 0, 0, 0.125, 0, 3.18241, 0) mesh = SubResource("SphereMesh_68awl") skeleton = NodePath("../..") surface_material_override/0 = ExtResource("26_13rch") [node name="Pedestal2" parent="VisibilityRangeLodGroup/Material_Testers" instance=ExtResource("10_70j47")] transform = Transform3D(8, 0, 0, 0, 8, 0, 0, 0, 8, -60, 1, 0) [node name="OutsetOceanSphere" type="MeshInstance3D" parent="VisibilityRangeLodGroup/Material_Testers/Pedestal2"] transform = Transform3D(0.125, 0, 0, 0, 0.125, 0, 0, 0, 0.125, 0, 3.18241, 0) mesh = SubResource("SphereMesh_68awl") skeleton = NodePath("../..") surface_material_override/0 = ExtResource("7_ch24e") [node name="Pedestal3" parent="VisibilityRangeLodGroup/Material_Testers" instance=ExtResource("10_70j47")] transform = Transform3D(8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 1, 0) [node name="IceCube" type="MeshInstance3D" parent="VisibilityRangeLodGroup/Material_Testers/Pedestal3"] transform = Transform3D(0.065145, -5.96046e-09, 0.0758692, -0.0580911, 0.0643229, 0.0498798, -0.0488012, -0.0765674, 0.0419031, 0, 3.18241, 0) mesh = ExtResource("22_7a0j4") skeleton = NodePath("../..") surface_material_override/0 = ExtResource("19_3bkn5") [node name="Pedestal4" parent="VisibilityRangeLodGroup/Material_Testers" instance=ExtResource("10_70j47")] transform = Transform3D(8, 0, 0, 0, 8, 0, 0, 0, 8, 60, 1, 0) [node name="ObsidianCube" type="MeshInstance3D" parent="VisibilityRangeLodGroup/Material_Testers/Pedestal4"] transform = Transform3D(0.065145, -5.96046e-09, 0.0758692, -0.0580911, 0.0643229, 0.0498798, -0.0488012, -0.0765674, 0.0419031, 0, 3.18241, 0) mesh = SubResource("BoxMesh_ehcfp") skeleton = NodePath("../..") surface_material_override/0 = ExtResource("21_wltbb") [node name="UnitCube" type="MeshInstance3D" parent="VisibilityRangeLodGroup/Material_Testers"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -49.477, 4.7, 0) mesh = SubResource("BoxMesh_6pj3g") skeleton = NodePath("") [node name="Thumbnail_Scene" type="Node3D" parent="VisibilityRangeLodGroup"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -200) [node name="Obelisk2" parent="VisibilityRangeLodGroup/Thumbnail_Scene" instance=ExtResource("9_qosoy")] transform = Transform3D(7.44818, 0.681815, -6.63775, -2.02612, 9.70908, -1.27621, 6.35763, 2.29543, 7.36964, 0, 28.368, 0) [node name="DeepOceanSphere" type="MeshInstance3D" parent="VisibilityRangeLodGroup/Thumbnail_Scene/Obelisk2"] transform = Transform3D(0.1, 0, 0, 0, 0.1, 0, 0, 0, 0.1, 0.22242, 12.4363, 0.470476) mesh = SubResource("SphereMesh_ljix4") skeleton = NodePath("../../../..") surface_material_override/0 = ExtResource("26_13rch") [connection signal="updated_lod" from="DeepOcean/WaterMaterialDesigner" to="." method="_on_water_material_designer_updated_lod"] [editable path="DeepOcean"]