aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--client/map/auto_setup/light_setup.gd11
-rw-r--r--client/map/environment/environment.gd8
-rw-r--r--client/map/environment/environment.tscn7
3 files changed, 24 insertions, 2 deletions
diff --git a/client/map/auto_setup/light_setup.gd b/client/map/auto_setup/light_setup.gd
index 7fb50c14..f583b6a5 100644
--- a/client/map/auto_setup/light_setup.gd
+++ b/client/map/auto_setup/light_setup.gd
@@ -22,3 +22,14 @@ func _ready():
func apply_settings():
shadow_enabled = Global.get_setting("shadows")
+
+func set_sky(sky_name: String):
+ match sky_name:
+ "day":
+ light_color = Color.WHITE
+ light_energy = 1.
+ "night":
+ light_color = Color("427a9a")
+ light_energy = 0.4
+ _:
+ push_error("Can not set up light: Unsupported sky name \"%s\"" % sky_name)
diff --git a/client/map/environment/environment.gd b/client/map/environment/environment.gd
index 4f866ac8..9cf6f03e 100644
--- a/client/map/environment/environment.gd
+++ b/client/map/environment/environment.gd
@@ -4,10 +4,11 @@ extends Node3D
@onready var wind: GPUParticles3D = $Wind
@onready var world_environment: EnvironmentSetup = $WorldEnvironment
+@onready var light: LightSetup = $DirectionalLight3D
func update(active: Array):
if active.has("night"):
- world_environment.set_sky("night")
+ set_sky("night")
wind.emitting = active.has("wind")
var a: ParticleProcessMaterial = wind.process_material
@@ -18,3 +19,8 @@ func update(active: Array):
# TODO ramp
rain.emitting = active.has("rain")
rain.amount = 500 if active.has("rain") else 0
+
+func set_sky(sky_name: String):
+ world_environment.set_sky(sky_name)
+ light.set_sky(sky_name)
+
diff --git a/client/map/environment/environment.tscn b/client/map/environment/environment.tscn
index 6cdb7afd..f7ffc521 100644
--- a/client/map/environment/environment.tscn
+++ b/client/map/environment/environment.tscn
@@ -1,4 +1,4 @@
-[gd_scene load_steps=12 format=3 uid="uid://nroo08m5og0"]
+[gd_scene load_steps=13 format=3 uid="uid://nroo08m5og0"]
[ext_resource type="Script" path="res://map/environment/environment.gd" id="1_qy481"]
[ext_resource type="PackedScene" uid="uid://cb4ic3ssk4r8r" path="res://map/environment/world_environment.tscn" id="2_68o16"]
@@ -58,6 +58,8 @@ material = SubResource("StandardMaterial3D_ig8qu")
radius = 0.03
height = 0.06
+[sub_resource type="BoxMesh" id="BoxMesh_5ia38"]
+
[node name="Environment" type="Node3D"]
script = ExtResource("1_qy481")
@@ -80,3 +82,6 @@ draw_pass_1 = SubResource("SphereMesh_4trvf")
transform = Transform3D(-0.413104, 0.834517, -0.364591, 0, 0.400349, 0.916363, 0.910684, 0.378553, -0.165386, 0, 0, 0)
shadow_enabled = true
script = ExtResource("3_53gk2")
+
+[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
+mesh = SubResource("BoxMesh_5ia38")