aboutsummaryrefslogtreecommitdiff
path: root/client/map
diff options
context:
space:
mode:
Diffstat (limited to 'client/map')
-rw-r--r--client/map/auto_setup/environment_setup.gd3
-rw-r--r--client/map/environment.gd10
-rw-r--r--client/map/environment.tscn73
3 files changed, 85 insertions, 1 deletions
diff --git a/client/map/auto_setup/environment_setup.gd b/client/map/auto_setup/environment_setup.gd
index 96feb86b..75dc900f 100644
--- a/client/map/auto_setup/environment_setup.gd
+++ b/client/map/auto_setup/environment_setup.gd
@@ -14,7 +14,7 @@
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
extends WorldEnvironment
-class_name EnvironmentSetup
+class_name EnvironmentSetup
@export var allow_sdfgi := true
@@ -26,3 +26,4 @@ func apply_settings():
environment.ssao_enabled = Global.get_setting("ssao")
environment.sdfgi_enabled = Global.get_setting("sdfgi") and allow_sdfgi
environment.glow_enabled = Global.get_setting("glow")
+
diff --git a/client/map/environment.gd b/client/map/environment.gd
new file mode 100644
index 00000000..f36b51b6
--- /dev/null
+++ b/client/map/environment.gd
@@ -0,0 +1,10 @@
+extends Node3D
+
+func update(params: Dictionary):
+ $Wind.emitting = params["wind"] > 0.1
+ var a: ParticleProcessMaterial = $Wind.process_material
+ a.initial_velocity_max = params["wind"] * 15.
+ a.initial_velocity_min = params["wind"] * 15.
+
+ $Rain.emitting = params["rain"] > 0.1
+ $Rain.amount = params["rain"] * 500
diff --git a/client/map/environment.tscn b/client/map/environment.tscn
new file mode 100644
index 00000000..ee51b490
--- /dev/null
+++ b/client/map/environment.tscn
@@ -0,0 +1,73 @@
+[gd_scene load_steps=10 format=3 uid="uid://nroo08m5og0"]
+
+[ext_resource type="Script" path="res://map/environment.gd" id="1_qy481"]
+
+[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_fyrr8"]
+emission_shape_offset = Vector3(0, 5, 0)
+emission_shape = 3
+emission_box_extents = Vector3(5, 5, 5)
+direction = Vector3(0, -1, 0)
+spread = 5.0
+initial_velocity_min = 10.0
+initial_velocity_max = 10.0
+scale_over_velocity_max = 1000.0
+turbulence_influence_min = 0.01
+turbulence_influence_max = 0.01
+
+[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_6mo3f"]
+depth_draw_mode = 2
+albedo_color = Color(0.792157, 0.74902, 1, 1)
+roughness = 0.07
+
+[sub_resource type="CapsuleMesh" id="CapsuleMesh_6kss1"]
+material = SubResource("StandardMaterial3D_6mo3f")
+radius = 0.01
+height = 0.5
+radial_segments = 4
+rings = 4
+
+[sub_resource type="Curve" id="Curve_frsnm"]
+_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(0.111524, 0.771057), 1.26444, 1.26444, 0, 0, Vector2(0.866171, 0.820827), -1.03348, -1.03348, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
+point_count = 4
+
+[sub_resource type="CurveTexture" id="CurveTexture_3gn1x"]
+curve = SubResource("Curve_frsnm")
+
+[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_pyn6b"]
+emission_shape_offset = Vector3(-2.5, 0, 0)
+emission_shape = 3
+emission_box_extents = Vector3(5, 5, 5)
+spread = 5.0
+initial_velocity_min = 2.0
+initial_velocity_max = 2.0
+gravity = Vector3(0, 0, 0)
+scale_curve = SubResource("CurveTexture_3gn1x")
+scale_over_velocity_max = 1000.0
+turbulence_enabled = true
+turbulence_influence_min = 0.01
+turbulence_influence_max = 0.01
+
+[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ig8qu"]
+depth_draw_mode = 2
+albedo_color = Color(0.412412, 0.527344, 0.250208, 1)
+
+[sub_resource type="SphereMesh" id="SphereMesh_4trvf"]
+material = SubResource("StandardMaterial3D_ig8qu")
+radius = 0.03
+height = 0.06
+
+[node name="Environment" type="Node3D"]
+script = ExtResource("1_qy481")
+
+[node name="Rain" type="GPUParticles3D" parent="."]
+emitting = false
+amount = 500
+process_material = SubResource("ParticleProcessMaterial_fyrr8")
+draw_pass_1 = SubResource("CapsuleMesh_6kss1")
+
+[node name="Wind" type="GPUParticles3D" parent="."]
+emitting = false
+amount = 150
+lifetime = 5.0
+process_material = SubResource("ParticleProcessMaterial_pyn6b")
+draw_pass_1 = SubResource("SphereMesh_4trvf")