From f61668c62680ced5e37b94adf7e0390515f06fe0 Mon Sep 17 00:00:00 2001 From: "m.cirafisi" Date: Tue, 7 Jul 2026 22:55:00 +0200 Subject: [PATCH] update transition from night to "alba" --- core/daynight/environment_manager.gd | 30 ++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/core/daynight/environment_manager.gd b/core/daynight/environment_manager.gd index cb1d3d2..7c8f89f 100644 --- a/core/daynight/environment_manager.gd +++ b/core/daynight/environment_manager.gd @@ -316,8 +316,19 @@ func select_day_time(normalized_time: float) -> void: #24:00 1.0000 3.0 if normalized_time < environment_config.sunrise: - #Sunrise: night → morning - day_time = 3.0 + (normalized_time / environment_config.sunrise) * 1.0 # 3.0 → 4.0 + #Sunrise: stay night → night to alba(afternoon) → alba to morning + var part = environment_config.sunrise / 3.0 + if normalized_time < part: + # Stay Night + day_time = 3.0 + elif normalized_time < part * 2.0: + # Night to Alba (Afternoon) + var t = (normalized_time - part) / part + day_time = 3.0 - (t * 1.0) # 3.0 → 2.0 + else: + # Alba (Afternoon) to Morning + var t = (normalized_time - part * 2.0) / part + day_time = 2.0 - (t * 1.0) # 2.0 → 1.0 elif normalized_time < environment_config.day: #Morning: morning → afternoon var t: float = (normalized_time - environment_config.sunrise) / (environment_config.day - environment_config.sunrise) @@ -342,10 +353,17 @@ func _update_clouds_lighting(normalized_time: float) -> void: return if normalized_time < environment_config.sunrise: - # NOTTE / PRE-ALBA (Colori scuri, nessun rim light solare) - cloud_material.set_shader_parameter("cloud_color", Color("1a1c2e")) - cloud_material.set_shader_parameter("shadow_color", Color("0d0e17")) - cloud_material.set_shader_parameter("rim_color", Color("000000")) + var part = environment_config.sunrise / 3.0 + if normalized_time < part * 2.0: + # NOTTE / PRE-ALBA (Colori scuri, nessun rim light solare) + cloud_material.set_shader_parameter("cloud_color", Color("1a1c2e")) + cloud_material.set_shader_parameter("shadow_color", Color("0d0e17")) + cloud_material.set_shader_parameter("rim_color", Color("000000")) + else: + # ALBA (uguale al tramonto) + cloud_material.set_shader_parameter("cloud_color", Color("fdf3e7")) + cloud_material.set_shader_parameter("shadow_color", Color("5c537a")) + cloud_material.set_shader_parameter("rim_color", Color("ff9e64")) elif normalized_time < environment_config.day: # MATTINA / ALBA (Colori che iniziano a scaldarsi)