main menu polish

This commit is contained in:
Matteo Sonaglioni
2026-06-23 15:50:47 +02:00
parent c47fff7890
commit 7be892b916
45 changed files with 1497 additions and 200 deletions

View File

@@ -1,8 +1,7 @@
[gd_scene format=3 uid="uid://cmuvmmp7xam4o"] [gd_scene format=3 uid="uid://cmuvmmp7xam4o"]
[ext_resource type="Script" uid="uid://d27xbipk650kf" path="res://core/daynight/environment_manager.gd" id="1_wecen"] [ext_resource type="Script" uid="uid://d27xbipk650kf" path="res://core/daynight/environment_manager.gd" id="1_wecen"]
[ext_resource type="Script" uid="uid://butda6k2tli3o" path="res://core/environment_config.gd" id="2_h6hjk"] [ext_resource type="Resource" uid="uid://cq627dtyhaew6" path="res://tgcc/map/main.tres" id="2_kavln"]
[ext_resource type="Shader" uid="uid://7vwkfffa5vao" path="res://core/daynight/clouds_shadow.gdshader" id="2_i3hjl"]
[ext_resource type="Shader" uid="uid://cq4vlcj8cuvge" path="res://core/daynight/fog.gdshader" id="2_r4tfj"] [ext_resource type="Shader" uid="uid://cq4vlcj8cuvge" path="res://core/daynight/fog.gdshader" id="2_r4tfj"]
[ext_resource type="PackedScene" uid="uid://dyxvcf2l8ba5x" path="res://core/daynight/god_ray.tscn" id="5_411rw"] [ext_resource type="PackedScene" uid="uid://dyxvcf2l8ba5x" path="res://core/daynight/god_ray.tscn" id="5_411rw"]
[ext_resource type="Shader" uid="uid://bb1jjwe31fl7o" path="res://core/daynight/wind.gdshader" id="5_djqkg"] [ext_resource type="Shader" uid="uid://bb1jjwe31fl7o" path="res://core/daynight/wind.gdshader" id="5_djqkg"]
@@ -12,95 +11,6 @@
[ext_resource type="Texture2D" uid="uid://b2xcpt2y8v32x" path="res://core/daynight/FogNoise.tres" id="11_tuauy"] [ext_resource type="Texture2D" uid="uid://b2xcpt2y8v32x" path="res://core/daynight/FogNoise.tres" id="11_tuauy"]
[ext_resource type="FastNoiseLite" uid="uid://c0mtwrkptjcuw" path="res://core/daynight/environment_shadows_noise_clouds.tres" id="11_yn8v8"] [ext_resource type="FastNoiseLite" uid="uid://c0mtwrkptjcuw" path="res://core/daynight/environment_shadows_noise_clouds.tres" id="11_yn8v8"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_ruhh7"]
render_priority = 0
shader = ExtResource("2_i3hjl")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_r4tfj"]
transparency = 2
alpha_scissor_threshold = 0.0
alpha_antialiasing_mode = 0
disable_ambient_light = true
albedo_color = Color(0.44410604, 0.32877246, 0.26597014, 0.7541567)
billboard_mode = 3
particles_anim_h_frames = 1
particles_anim_v_frames = 1
particles_anim_loop = false
[sub_resource type="ShaderMaterial" id="ShaderMaterial_b5atu"]
render_priority = 0
shader = ExtResource("2_r4tfj")
shader_parameter/use_red_as_alpha = true
shader_parameter/fog_color = Color(0.8, 0.85, 0.9, 0.5)
shader_parameter/fog_density = 0.25
shader_parameter/scroll_speed = Vector2(0.05, 0.01)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/edge_softness_y = 0.2
shader_parameter/edge_softness_x = 0.1
shader_parameter/night_intensity = 0.7953524793650795
shader_parameter/sun_color = Color(0.2841828, 0.2023238, 0.27953526, 1)
[sub_resource type="Resource" id="Resource_r4tfj"]
script = ExtResource("2_h6hjk")
morning_color = Color(0.93333334, 0.78039217, 0.6039216, 1)
afternoon_color = Color(0.9490196, 0.62352943, 0.38039216, 1)
night_color = Color(0.18431373, 0.18431373, 0.4862745, 1)
sun_rotation_morning = Vector3(-50, -90, 0)
sun_rotation_afternoon = Vector3(-120, -90, 0)
sun_rotation_night = Vector3(-130, -90, 0)
night_light_energy = 1.0
exposure_morning = 0.8
exposure_afternoon = 0.7
exposure_night = 0.7
rain_exposure_morning = 0.3
rain_exposure_afternoon = 0.4
rain_exposure_night = 1.8
storm_exposure_night = 1.8
sky_top_morning = Color(0.3176695, 0.43165123, 0.8895605, 1)
sky_top_afternoon = Color(0.42314696, 0.32907307, 0.74664044, 1)
sky_top_night = Color(0.20675227, 0.20655477, 0.4437065, 1)
sky_horizon_afternoon = Color(0.96335155, 0.3563425, 0.1952039, 1)
sky_horizon_night = Color(0.13534775, 0.09013713, 0.2303626, 1)
grad_top_morning = Color(0.7921569, 0.8784314, 0.95686275, 1)
grad_top_afternoon = Color(0.8627451, 0.24313726, 0.5411765, 1)
grad_top_night = Color(0.16470589, 0.16470589, 0.26666668, 1)
grad_bot_morning = Color(0.64469576, 0.7045768, 0.9350398, 1)
grad_bot_afternoon = Color(0.2509804, 0.019607844, 0.043137256, 1)
grad_intensity_morning = 0.05
grad_intensity_afternoon = 0.1
grad_intensity_night = 0.5
fog_color_morning = Color(0.7490196, 0.8509804, 0.9490196, 1)
fog_color_afternoon = Color(0.9823975, 0.8034449, 0.8778439, 1)
fog_color_night = Color(0.18375358, 0.16627002, 0.3588226, 1)
fog_density_morning = 0.01
fog_density_afternoon = 0.01
fog_density_night = 0.03
glow_morning = 0.4
glow_night = 0.8
enable_fog = true
material_fog = SubResource("ShaderMaterial_b5atu")
material_drops = SubResource("StandardMaterial3D_r4tfj")
material_clouds = SubResource("ShaderMaterial_ruhh7")
lightning_color = Color(1, 0.9843137, 0.4627451, 1)
lightning_min = 2
lightning_max = 4
lightning_scale_min = 2.0
lightning_scale_max = 5.0
godray_max_rain = 30
godray_spawn_radius = 100.0
godray_spawn_offset = Vector3(20, 80, 20)
godray_rotation_degrees = Vector3(50, 30, 0)
godray_scale = Vector3(2, 25, 50)
snow_amount = 2000.0
wind_amount = 50
cloud_speed = 0.01
fireflies_amount = 550
fireflies_spawn_ray = 60.0
water_color_morning = Color(0.33333334, 0.654902, 0.5294118, 1)
water_color_afternoon = Color(0.5803922, 0.5137255, 0.2901961, 1)
water_color_night = Color(0.48235294, 0.45490196, 0.69411767, 1)
metadata/_custom_type_script = "uid://butda6k2tli3o"
[sub_resource type="Gradient" id="Gradient_i3hjl"] [sub_resource type="Gradient" id="Gradient_i3hjl"]
offsets = PackedFloat32Array(0, 0.49019608, 1) offsets = PackedFloat32Array(0, 0.49019608, 1)
colors = PackedColorArray(0, 0, 0, 0, 1, 0.8980392, 0.3764706, 1, 1, 1, 1, 0) colors = PackedColorArray(0, 0, 0, 0, 1, 0.8980392, 0.3764706, 1, 1, 1, 1, 0)
@@ -277,7 +187,7 @@ shader_parameter/sun_color = Color(1, 1, 1, 1)
[node name="EnvironmentManager" type="Node3D" unique_id=1611939731 node_paths=PackedStringArray("particles_wind", "particles_snow", "particles_fireflies", "particles_rain", "environment_dust", "blur", "environment_shadows", "fog")] [node name="EnvironmentManager" type="Node3D" unique_id=1611939731 node_paths=PackedStringArray("particles_wind", "particles_snow", "particles_fireflies", "particles_rain", "environment_dust", "blur", "environment_shadows", "fog")]
script = ExtResource("1_wecen") script = ExtResource("1_wecen")
environment_config = SubResource("Resource_r4tfj") environment_config = ExtResource("2_kavln")
particles_wind = NodePath("Particles_Wind") particles_wind = NodePath("Particles_Wind")
particles_snow = NodePath("Particles_Snow") particles_snow = NodePath("Particles_Snow")
particles_fireflies = NodePath("Particles_Fireflies") particles_fireflies = NodePath("Particles_Fireflies")

View File

@@ -26,6 +26,9 @@ const DYNAMIC_ENVIRONMENT_UPDATES_PER_FRAME: int = 32 #how many update of the en
@export var thunder_sounds: Array[AudioStream] @export var thunder_sounds: Array[AudioStream]
@export var rain_sounds: Array[AudioStream] @export var rain_sounds: Array[AudioStream]
@export_group("Clouds")
@export var cloud_material: ShaderMaterial
#environment nodes #environment nodes
@onready var sun: DirectionalLight3D = $"../DirectionalLight3D" @onready var sun: DirectionalLight3D = $"../DirectionalLight3D"
@onready var environment: WorldEnvironment = $"../WorldEnvironment" @onready var environment: WorldEnvironment = $"../WorldEnvironment"
@@ -248,3 +251,39 @@ func select_day_time(normalized_time: float) -> void:
if weather_controller: if weather_controller:
weather_controller.day_time = day_time weather_controller.day_time = day_time
_update_clouds_lighting(normalized_time)
func _update_clouds_lighting(normalized_time: float) -> void:
if not cloud_material:
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"))
elif normalized_time < environment_config.day:
# MATTINA / ALBA (Colori che iniziano a scaldarsi)
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.sunset:
# PIENO GIORNO (Nuvole bianche brillanti, ombre azzurrate anime)
cloud_material.set_shader_parameter("cloud_color", Color("ffffff"))
cloud_material.set_shader_parameter("shadow_color", Color("687fa1"))
cloud_material.set_shader_parameter("rim_color", Color("fff3cc"))
elif normalized_time < environment_config.night:
# TRAMONTO (Bordo dorato/arancione acceso e ombre violacee)
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"))
else:
# NOTTE FONDA (Ritorno al buio)
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"))

View File

@@ -3,7 +3,9 @@
[sub_resource type="FastNoiseLite" id="FastNoiseLite_xa3jw"] [sub_resource type="FastNoiseLite" id="FastNoiseLite_xa3jw"]
noise_type = 3 noise_type = 3
seed = 1 seed = 1
frequency = 0.0158 frequency = 0.0264
fractal_octaves = 10
fractal_lacunarity = 2.13
metadata/_preview_in_3d_space_ = true metadata/_preview_in_3d_space_ = true
[resource] [resource]

View File

@@ -55,6 +55,10 @@ anchor_left = 0.42135417
anchor_top = 0.45833334 anchor_top = 0.45833334
anchor_right = 0.5786458 anchor_right = 0.5786458
anchor_bottom = 0.5416667 anchor_bottom = 0.5416667
offset_left = -127.24896
offset_top = -41.25
offset_right = 127.24896
offset_bottom = 41.25
grow_horizontal = 2 grow_horizontal = 2
grow_vertical = 2 grow_vertical = 2
pivot_offset_ratio = Vector2(0.5, 0.5) pivot_offset_ratio = Vector2(0.5, 0.5)

View File

@@ -30,6 +30,7 @@ TweenFX="*uid://d2n10rw2dnx8o"
window/size/viewport_width=1920 window/size/viewport_width=1920
window/size/viewport_height=1080 window/size/viewport_height=1080
window/size/mode=3
window/stretch/mode="canvas_items" window/stretch/mode="canvas_items"
window/stretch/aspect="expand" window/stretch/aspect="expand"

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

View File

@@ -0,0 +1,41 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c36vr0vdnnxq5"
path.s3tc="res://.godot/imported/Fuji_1.png-1ff892c6295733359de6eb7f81cf21d3.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://tgcc/chunk/material/decal/Fuji_1.png"
dest_files=["res://.godot/imported/Fuji_1.png-1ff892c6295733359de6eb7f81cf21d3.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1,41 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dkywrxkj8bn22"
path.s3tc="res://.godot/imported/Fuji_2.png-bef2a174b281d204efa5e4db009605ba.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://tgcc/chunk/material/decal/Fuji_2.png"
dest_files=["res://.godot/imported/Fuji_2.png-bef2a174b281d204efa5e4db009605ba.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 112 KiB

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ibasu8f2j88u"
path="res://.godot/imported/store_capsule_logo_def.png-d67be646b0b27f49f30678b60db59997.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://tgcc/chunk/material/decal/store_capsule_logo_def.png"
dest_files=["res://.godot/imported/store_capsule_logo_def.png-d67be646b0b27f49f30678b60db59997.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@@ -0,0 +1,148 @@
shader_type spatial;
render_mode diffuse_toon, specular_disabled, ambient_light_disabled;
group_uniforms Albedo_Settings;
uniform vec4 albedo_color : source_color = vec4(1.0);
uniform sampler2D albedo_texture : source_color, filter_nearest;
uniform bool use_texture = true;
uniform vec2 uv_scale = vec2(1.0, 1.0);
uniform float palette_shift_y : hint_range(0.0, 1.0) = 0.0;
group_uniforms Height_Gradient;
global uniform vec4 global_gradient_color_top;
global uniform vec4 global_gradient_color_bot;
global uniform float global_gradient_intensity;
uniform float gradient_start_y = 0.0;
uniform float gradient_end_y = 10.0;
group_uniforms Top_Down_Local_Gradient;
uniform bool use_local_gradient = true;
uniform vec4 local_gradient_color_top : source_color = vec4(1.0, 1.0, 1.0, 1.0);
uniform vec4 local_gradient_color_bot : source_color = vec4(0.15, 0.15, 0.25, 1.0);
uniform float local_gradient_start = -1.0;
uniform float local_gradient_end = 1.0;
uniform float local_gradient_intensity : hint_range(0.0, 1.0) = 0.5;
// CONTROLLI DI ROTAZIONE
uniform float rotazione_gradiente_x : hint_range(-180.0, 180.0) = 0.0;
uniform float rotazione_gradiente_y : hint_range(-180.0, 180.0) = 0.0;
uniform float rotazione_gradiente_z : hint_range(-180.0, 180.0) = 0.0;
// NUOVI CONTROLLI PER IL FRASTAGLIATO (LOOK GHIBLI)
uniform float local_gradient_jaggedness : hint_range(0.0, 2.0) = 0.3; // Ampiezza delle onde/pennellate
uniform float local_gradient_frequency : hint_range(0.1, 30.0) = 8.0; // Fittezza del frastagliato
group_uniforms Toon_Lighting;
uniform float light_steps : hint_range(1.0, 10.0, 1.0) = 3.0;
uniform float step_softness : hint_range(0.01, 1.0) = 0.1;
uniform vec4 shadow_color : source_color = vec4(0.4, 0.4, 0.6, 1.0);
uniform float shadow_offset : hint_range(-1.0, 1.0) = 0.0;
uniform float cast_shadow_strength : hint_range(0.0, 1.0) = 0.6;
group_uniforms Ghibli_Directional_Glint;
uniform bool use_ghibli_glint = true;
uniform vec4 glint_color : source_color = vec4(1.0, 0.95, 0.85, 1.0);
uniform float glint_intensity : hint_range(0.0, 10.0) = 1.0;
uniform float glint_sharpness : hint_range(1.0, 128.0) = 32.0;
group_uniforms Emission_Settings;
uniform vec4 emission_color : source_color = vec4(0.0, 0.0, 0.0, 1.0);
uniform float emission_energy : hint_range(0.0, 16.0) = 0.0;
varying float world_y;
varying vec3 local_pos_ruotata; // Passiamo l'intero vettore 3D ruotato al fragment
void vertex() {
world_y = (MODEL_MATRIX * vec4(VERTEX, 1.0)).y;
vec3 v_rotato = VERTEX;
float rad_x = radians(rotazione_gradiente_x);
float rad_y = radians(rotazione_gradiente_y);
float rad_z = radians(rotazione_gradiente_z);
// Rotazione Asse Y
float cy = cos(rad_y), sy = sin(rad_y);
float x1 = v_rotato.x * cy + v_rotato.z * sy;
float z1 = -v_rotato.x * sy + v_rotato.z * cy;
v_rotato.x = x1; v_rotato.z = z1;
// Rotazione Asse X
float cx = cos(rad_x), sx = sin(rad_x);
float y2 = v_rotato.y * cx - v_rotato.z * sx;
float z2 = v_rotato.y * sx + v_rotato.z * cx;
v_rotato.y = y2; v_rotato.z = z2;
// Rotazione Asse Z
float cz = cos(rad_z), sz = sin(rad_z);
float x3 = v_rotato.x * cz - v_rotato.y * sz;
float y3 = v_rotato.x * sz + v_rotato.y * cz;
v_rotato.x = x3; v_rotato.y = y3;
// Salviamo la posizione 3D trasformata
local_pos_ruotata = v_rotato;
}
void fragment() {
vec2 final_uv = (UV * uv_scale) + vec2(0.0, palette_shift_y);
vec4 tex = texture(albedo_texture, final_uv);
vec3 base_color = albedo_color.rgb;
if (use_texture) base_color *= tex.rgb;
// 1. Gradiente del Mondo
float grad_factor = smoothstep(gradient_start_y, gradient_end_y, world_y);
vec3 current_gradient_color = mix(global_gradient_color_bot.rgb, global_gradient_color_top.rgb, grad_factor);
base_color = mix(base_color, current_gradient_color, global_gradient_intensity);
// 2. Gradiente Locale Ruotabile e Frastagliato
if (use_local_gradient) {
// Generiamo un rumore stratificato stile "pennellata anime" unendo più onde sfasate
float freq = local_gradient_frequency;
float noise = sin(local_pos_ruotata.x * freq) * cos(local_pos_ruotata.z * freq);
// Secondo strato ad alta frequenza per rompere la simmetria matematica delle onde
noise += sin(local_pos_ruotata.z * freq * 2.13) * sin(local_pos_ruotata.y * freq * 1.77) * 0.5;
// Perturbiamo l'altezza locale effettiva usando il rumore calcolato
float local_y_frastagliata = local_pos_ruotata.y + (noise * local_gradient_jaggedness);
// Calcoliamo il fattore di gradiente sulla coordinata alterata
float local_grad_factor = smoothstep(local_gradient_start, local_gradient_end, local_y_frastagliata);
vec3 local_grad_color = mix(local_gradient_color_bot.rgb, local_gradient_color_top.rgb, local_grad_factor);
base_color = mix(base_color, local_grad_color, local_gradient_intensity);
}
ALBEDO = base_color;
EMISSION = emission_color.rgb * emission_energy;
}
void light() {
float shadow_factor = mix(1.0 - cast_shadow_strength, 1.0, ATTENUATION);
float cutoff_mask = smoothstep(0.0, 0.1, ATTENUATION);
float n_dot_l = dot(NORMAL, LIGHT);
// dither
float dither = fract(sin(dot(FRAGCOORD.xy, vec2(12.9898, 78.233))) * 43758.5453);
float intensity = (clamp(n_dot_l, 0.0, 1.0) * shadow_factor) + (dither - 0.5) * 0.02;
float raw_step = (intensity + shadow_offset) * light_steps;
float lower_step = floor(raw_step);
float fract_step = fract(raw_step);
float soft_lerp = smoothstep(0.5 - step_softness, 0.5 + step_softness, fract_step);
float stepped_intensity = (lower_step + soft_lerp) / light_steps;
// Toon colors
vec3 light_color_final = mix(shadow_color.rgb, vec3(1.1), clamp(stepped_intensity, 0.0, 1.0));
DIFFUSE_LIGHT += (light_color_final * LIGHT_COLOR) * cutoff_mask;
if (use_ghibli_glint) {
float glint_raw = pow(max(0.0, n_dot_l), glint_sharpness);
float glint_mask = smoothstep(0.5 - step_softness*0.5, 0.5 + step_softness*0.5, glint_raw);
glint_mask *= smoothstep(0.0, 0.1, n_dot_l);
vec3 extra_sun_glint = glint_mask * glint_color.rgb * LIGHT_COLOR * glint_intensity * ATTENUATION;
DIFFUSE_LIGHT += extra_sun_glint;
}
}

View File

@@ -0,0 +1 @@
uid://c7f1m5qg0011a

View File

@@ -0,0 +1,35 @@
[gd_resource type="ShaderMaterial" format=3 uid="uid://d0pg1iw58amjm"]
[ext_resource type="Shader" uid="uid://c7f1m5qg0011a" path="res://tgcc/chunk/material/fuji.gdshader" id="1_8wx3n"]
[resource]
render_priority = 0
shader = ExtResource("1_8wx3n")
shader_parameter/albedo_color = Color(0.20906344, 0.22397816, 0.17167854, 1)
shader_parameter/use_texture = true
shader_parameter/uv_scale = Vector2(1, 1)
shader_parameter/palette_shift_y = 0.0
shader_parameter/gradient_start_y = 0.0
shader_parameter/gradient_end_y = 10.0
shader_parameter/use_local_gradient = true
shader_parameter/local_gradient_color_top = Color(1, 1, 1, 1)
shader_parameter/local_gradient_color_bot = Color(0.23813424, 0.23054239, 0.24542066, 1)
shader_parameter/local_gradient_start = 0.515
shader_parameter/local_gradient_end = 8.095
shader_parameter/local_gradient_intensity = 0.50000002375
shader_parameter/rotazione_gradiente_x = -86.785995572335
shader_parameter/rotazione_gradiente_y = -8.18499183878751
shader_parameter/rotazione_gradiente_z = 1.6820086298949946
shader_parameter/local_gradient_jaggedness = 2.0
shader_parameter/local_gradient_frequency = 0.15000000386512
shader_parameter/light_steps = 4.0
shader_parameter/step_softness = 0.00999999977648
shader_parameter/shadow_color = Color(0.4, 0.4, 0.6, 1)
shader_parameter/shadow_offset = 0.0
shader_parameter/cast_shadow_strength = 0.6
shader_parameter/use_ghibli_glint = true
shader_parameter/glint_color = Color(1, 0.95, 0.85, 1)
shader_parameter/glint_intensity = 1.0
shader_parameter/glint_sharpness = 32.0
shader_parameter/emission_color = Color(0, 0, 0, 1)
shader_parameter/emission_energy = 0.0

View File

@@ -0,0 +1,12 @@
[gd_resource type="ShaderMaterial" format=3 uid="uid://dljvvppsdbjd1"]
[ext_resource type="Shader" uid="uid://cv4fkugqv82sb" path="res://tgcc/main menu/main_menu_glow.gdshader" id="1_7x0ku"]
[resource]
render_priority = 0
shader = ExtResource("1_7x0ku")
shader_parameter/glow_color = Color(1, 0.5, 0.1, 0.5)
shader_parameter/glow_intensity = 0.4770000226575
shader_parameter/falloff_power = 1.8960000868001199
shader_parameter/modalita_rettangolo = true
shader_parameter/rettangolo_morbidezza = Vector2(0.2, 0.4)

Binary file not shown.

After

Width:  |  Height:  |  Size: 221 KiB

View File

@@ -0,0 +1,41 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cr7y2o4khuoa8"
path.s3tc="res://.godot/imported/23e821ba648f2657637dc7f2b61ffb24.png-65d40c4ca0d834aa42532e504a92b09d.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://tgcc/chunk/prop/cloud/23e821ba648f2657637dc7f2b61ffb24.png"
dest_files=["res://.godot/imported/23e821ba648f2657637dc7f2b61ffb24.png-65d40c4ca0d834aa42532e504a92b09d.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

View File

@@ -0,0 +1,31 @@
[gd_resource type="ShaderMaterial" format=3 uid="uid://bp2yikej20rke"]
[ext_resource type="Shader" uid="uid://drrww3ypdw1hi" path="res://tgcc/main menu/nuvole.gdshader" id="1_ecbm2"]
[ext_resource type="Texture2D" uid="uid://cr7y2o4khuoa8" path="res://tgcc/chunk/prop/cloud/23e821ba648f2657637dc7f2b61ffb24.png" id="2_33h4k"]
[resource]
render_priority = 0
shader = ExtResource("1_ecbm2")
shader_parameter/billboard_enabled = false
shader_parameter/wind_enabled = false
shader_parameter/texture_nuvola = ExtResource("2_33h4k")
shader_parameter/nuvola_scale = 1.0
shader_parameter/rotation_degrees = 0.0
shader_parameter/texture_offset = Vector2(0, 0)
shader_parameter/opacity = 0.8590000408025
shader_parameter/edge_erosion = 0.27600001311
shader_parameter/blur_intensity = 0.42400002014
shader_parameter/edge_softness = 0.00999999977648
shader_parameter/colore_alto_luce = Color(0.31361938, 0.08974708, 0.5880675, 1)
shader_parameter/colore_basso_ombra = Color(0.47065485, 0.00018795059, 0.4830022, 1)
shader_parameter/limite_inferiore = -0.5
shader_parameter/limite_superiore = 0.5
shader_parameter/intensita_gradiente = 0.6
shader_parameter/frastagliatura_bordo = 0.0
shader_parameter/frequenza_frastagliatura = 10.34900048831762
shader_parameter/rotazione_gradiente_z = 0.0
shader_parameter/volume_bulge = 1.5
shader_parameter/micro_bumpiness = 0.25
shader_parameter/light_steps = 10.0
shader_parameter/shadow_wrap = 0.5990000284525
shader_parameter/cast_shadow_strength = 0.5

View File

@@ -0,0 +1,9 @@
[gd_resource type="StandardMaterial3D" format=3 uid="uid://b5e1058ewo0w3"]
[ext_resource type="Texture2D" uid="uid://cr7y2o4khuoa8" path="res://tgcc/chunk/prop/cloud/23e821ba648f2657637dc7f2b61ffb24.png" id="1_mk0io"]
[resource]
transparency = 2
alpha_scissor_threshold = 0.5
alpha_antialiasing_mode = 0
albedo_texture = ExtResource("1_mk0io")

Binary file not shown.

View File

@@ -21,17 +21,17 @@ nodes/root_scale=1.0
nodes/import_as_skeleton_bones=false nodes/import_as_skeleton_bones=false
nodes/use_name_suffixes=true nodes/use_name_suffixes=true
nodes/use_node_type_suffixes=true nodes/use_node_type_suffixes=true
meshes/ensure_tangents=true meshes/ensure_tangents=false
meshes/generate_lods=true meshes/generate_lods=false
meshes/create_shadow_meshes=true meshes/create_shadow_meshes=false
meshes/light_baking=1 meshes/light_baking=1
meshes/lightmap_texel_size=0.2 meshes/lightmap_texel_size=0.2
meshes/force_disable_compression=false meshes/force_disable_compression=false
skins/use_named_skins=true skins/use_named_skins=true
animation/import=true animation/import=false
animation/fps=30 animation/fps=30
animation/trimming=true animation/trimming=false
animation/remove_immutable_tracks=true animation/remove_immutable_tracks=false
animation/import_rest_as_RESET=false animation/import_rest_as_RESET=false
import_script/path="" import_script/path=""
materials/extract=0 materials/extract=0

View File

@@ -1,6 +1,8 @@
shader_type spatial; shader_type spatial;
// Corretto: rimosso ambient_sink che mandava in errore il compilatore // Corretto: rimosso ambient_sink che mandava in errore il compilatore
render_mode diffuse_toon, specular_disabled; // Aggiunto shadows_disabled per impedire alla shadowmap del sole di creare artefatti geometrici
render_mode diffuse_toon, specular_disabled, shadows_disabled;
uniform vec3 cloud_color : source_color = vec3(0.95, 0.95, 0.98); uniform vec3 cloud_color : source_color = vec3(0.95, 0.95, 0.98);
uniform vec3 shadow_color : source_color = vec3(0.4, 0.45, 0.65); uniform vec3 shadow_color : source_color = vec3(0.4, 0.45, 0.65);

View File

@@ -1,20 +1,9 @@
[gd_scene format=3 uid="uid://hvr66x101a0v"] [gd_scene format=3 uid="uid://hvr66x101a0v"]
[ext_resource type="PackedScene" uid="uid://bio6eds43i7rt" path="res://tgcc/chunk/prop/cloud/cloud1.fbx" id="1_nnqat"] [ext_resource type="PackedScene" uid="uid://bio6eds43i7rt" path="res://tgcc/chunk/prop/cloud/cloud1.fbx" id="1_nnqat"]
[ext_resource type="Shader" uid="uid://cpgtj8mhjklb8" path="res://tgcc/chunk/prop/cloud/cloud3d.gdshader" id="2_j3pha"] [ext_resource type="Material" uid="uid://wkegx4a21x7u" path="res://tgcc/chunk/prop/fence/fences.tres" id="2_nnqat"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_uam3e"] [node name="cloud1" unique_id=1837777311 instance=ExtResource("1_nnqat")]
render_priority = 0
shader = ExtResource("2_j3pha")
shader_parameter/cloud_color = Color(0.95, 0.95, 0.98, 1)
shader_parameter/shadow_color = Color(0.4, 0.45, 0.65, 1)
shader_parameter/rim_color = Color(1, 0.6, 0.4, 1)
shader_parameter/shadow_threshold = -0.1
shader_parameter/shadow_softness = 0.05
shader_parameter/rim_size = 0.4810000228475
shader_parameter/rim_softness = 0.07200000342
[node name="cloud1" unique_id=1538081576 instance=ExtResource("1_nnqat")] [node name="defaultMaterial" parent="." index="0" unique_id=1823644408]
surface_material_override/0 = ExtResource("2_nnqat")
[node name="Cube" parent="." index="0" unique_id=918471000]
surface_material_override/0 = SubResource("ShaderMaterial_uam3e")

Binary file not shown.

View File

@@ -0,0 +1,44 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bb4gksxo0p71a"
path="res://.godot/imported/Fuji.fbx-38fd0bfbb228aa6ff8bee934e8c949b5.scn"
[deps]
source_file="res://tgcc/chunk/prop/fuji/Fuji.fbx"
dest_files=["res://.godot/imported/Fuji.fbx-38fd0bfbb228aa6ff8bee934e8c949b5.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/root_script=null
nodes/apply_root_scale=true
nodes/root_scale=1.0
nodes/import_as_skeleton_bones=false
nodes/use_name_suffixes=true
nodes/use_node_type_suffixes=true
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
meshes/force_disable_compression=false
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=true
animation/remove_immutable_tracks=true
animation/import_rest_as_RESET=false
import_script/path=""
materials/extract=0
materials/extract_format=0
materials/extract_path=""
_subresources={}
fbx/importer=0
fbx/allow_geometry_helper_nodes=false
fbx/embedded_image_handling=1
fbx/naming_version=2

Binary file not shown.

View File

@@ -0,0 +1,44 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bnhq61wr4ei7v"
path="res://.godot/imported/Fuji2.fbx-e74e9c86679c74329951b17b7c3b7eee.scn"
[deps]
source_file="res://tgcc/chunk/prop/fuji/Fuji2.fbx"
dest_files=["res://.godot/imported/Fuji2.fbx-e74e9c86679c74329951b17b7c3b7eee.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/root_script=null
nodes/apply_root_scale=true
nodes/root_scale=1.0
nodes/import_as_skeleton_bones=false
nodes/use_name_suffixes=true
nodes/use_node_type_suffixes=true
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
meshes/force_disable_compression=false
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=true
animation/remove_immutable_tracks=true
animation/import_rest_as_RESET=false
import_script/path=""
materials/extract=0
materials/extract_format=0
materials/extract_path=""
_subresources={}
fbx/importer=0
fbx/allow_geometry_helper_nodes=false
fbx/embedded_image_handling=1
fbx/naming_version=2

View File

@@ -0,0 +1,9 @@
[gd_scene format=3 uid="uid://c8fk1kxpkxpm2"]
[ext_resource type="PackedScene" uid="uid://bb4gksxo0p71a" path="res://tgcc/chunk/prop/fuji/Fuji.fbx" id="1_6u4hh"]
[ext_resource type="Material" uid="uid://d0pg1iw58amjm" path="res://tgcc/chunk/material/fuji.tres" id="2_pqsp3"]
[node name="Fuji" unique_id=150126281 instance=ExtResource("1_6u4hh")]
[node name="Mt Fuji_simplified_3d_mesh" parent="." index="0" unique_id=1389340781]
surface_material_override/0 = ExtResource("2_pqsp3")

View File

@@ -0,0 +1,39 @@
[gd_scene format=3 uid="uid://dre1jaoxug015"]
[ext_resource type="PackedScene" uid="uid://bnhq61wr4ei7v" path="res://tgcc/chunk/prop/fuji/Fuji2.fbx" id="1_04arg"]
[ext_resource type="Shader" uid="uid://c7f1m5qg0011a" path="res://tgcc/chunk/material/fuji.gdshader" id="2_04arg"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_7tlke"]
render_priority = 0
shader = ExtResource("2_04arg")
shader_parameter/albedo_color = Color(0.20906344, 0.22397816, 0.17167854, 1)
shader_parameter/use_texture = true
shader_parameter/uv_scale = Vector2(1, 1)
shader_parameter/palette_shift_y = 0.0
shader_parameter/gradient_start_y = 0.0
shader_parameter/gradient_end_y = 10.0
shader_parameter/use_local_gradient = false
shader_parameter/local_gradient_color_top = Color(0.83889705, 0.83889705, 0.838897, 1)
shader_parameter/local_gradient_color_bot = Color(0.23813424, 0.23054239, 0.24542066, 1)
shader_parameter/local_gradient_start = -5.035
shader_parameter/local_gradient_end = 4.8100000000000005
shader_parameter/local_gradient_intensity = 0.2770000131575
shader_parameter/rotazione_gradiente_x = -86.785995572335
shader_parameter/rotazione_gradiente_y = -4.820991678997501
shader_parameter/rotazione_gradiente_z = 0.0
shader_parameter/light_steps = 6.0
shader_parameter/step_softness = 0.00999999977648
shader_parameter/shadow_color = Color(0.4, 0.4, 0.6, 1)
shader_parameter/shadow_offset = 0.0
shader_parameter/cast_shadow_strength = 0.6
shader_parameter/use_ghibli_glint = true
shader_parameter/glint_color = Color(1, 0.95, 0.85, 1)
shader_parameter/glint_intensity = 1.0
shader_parameter/glint_sharpness = 32.0
shader_parameter/emission_color = Color(0, 0, 0, 1)
shader_parameter/emission_energy = 0.0
[node name="Fuji2" unique_id=842328745 instance=ExtResource("1_04arg")]
[node name="Landscape" parent="." index="0" unique_id=244602034]
surface_material_override/0 = SubResource("ShaderMaterial_7tlke")

View File

@@ -21,6 +21,7 @@ shader_parameter/variance_color = Color(0.09803922, 0.18039216, 0.05490196, 1)
shader_parameter/variance_intensity = 0.90000004275 shader_parameter/variance_intensity = 0.90000004275
shader_parameter/snow_color = Color(0.85, 0.9, 0.95, 1) shader_parameter/snow_color = Color(0.85, 0.9, 0.95, 1)
shader_parameter/snow_visibility = 1.0 shader_parameter/snow_visibility = 1.0
shader_parameter/snow_coverage = 0.35
shader_parameter/height_min = 0.0 shader_parameter/height_min = 0.0
shader_parameter/height_max = 5.0 shader_parameter/height_max = 5.0
shader_parameter/shadow_intensity = 0.610000028975 shader_parameter/shadow_intensity = 0.610000028975

View File

@@ -2,7 +2,8 @@
[sub_resource type="FastNoiseLite" id="FastNoiseLite_xa3jw"] [sub_resource type="FastNoiseLite" id="FastNoiseLite_xa3jw"]
noise_type = 3 noise_type = 3
seed = 1 seed = 9
frequency = 0.0366
metadata/_preview_in_3d_space_ = true metadata/_preview_in_3d_space_ = true
[resource] [resource]

Binary file not shown.

View File

@@ -0,0 +1,44 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bnbe2tvtj74y3"
path="res://.godot/imported/Sign.fbx-bb41d9f79b988fd5b6cd82e2b56b00d8.scn"
[deps]
source_file="res://tgcc/chunk/prop/sign/fbx/Sign.fbx"
dest_files=["res://.godot/imported/Sign.fbx-bb41d9f79b988fd5b6cd82e2b56b00d8.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/root_script=null
nodes/apply_root_scale=true
nodes/root_scale=1.0
nodes/import_as_skeleton_bones=false
nodes/use_name_suffixes=true
nodes/use_node_type_suffixes=true
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
meshes/force_disable_compression=false
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=true
animation/remove_immutable_tracks=true
animation/import_rest_as_RESET=false
import_script/path=""
materials/extract=0
materials/extract_format=0
materials/extract_path=""
_subresources={}
fbx/importer=0
fbx/allow_geometry_helper_nodes=false
fbx/embedded_image_handling=1
fbx/naming_version=2

View File

@@ -0,0 +1,9 @@
[gd_scene format=3 uid="uid://cp2vmysawnuql"]
[ext_resource type="PackedScene" uid="uid://bnbe2tvtj74y3" path="res://tgcc/chunk/prop/sign/fbx/Sign.fbx" id="1_xkqos"]
[ext_resource type="Material" uid="uid://buxlrrpn7rdgs" path="res://tgcc/chunk/material/wood.tres" id="2_kety3"]
[node name="Sign" unique_id=1434874277 instance=ExtResource("1_xkqos")]
[node name="Cube_229" parent="." index="0" unique_id=1978095682]
surface_material_override/0 = ExtResource("2_kety3")

View File

@@ -0,0 +1,50 @@
shader_type spatial;
render_mode unshaded, blend_mix, depth_draw_opaque, cull_disabled;
group_uniforms Aspetto_Raggi;
uniform vec3 colore_raggi : source_color = vec3(1.0, 0.85, 0.6);
uniform float opacita_generale : hint_range(0.0, 1.0) = 0.3;
group_uniforms Controlli_Inspector;
// 1. ALZARE IL CENTRO: Alza il valore Y (es. 0.2 o 0.3) per spostare il punto d'origine verso l'alto
uniform vec2 centro_raggi = vec2(0.5, 0.0);
// 2. ALLARGARE LE STRISCE: Valori più alti creano fasci ciccioni, valori bassi creano lame di luce sottili
uniform float larghezza_raggi : hint_range(0.1, 0.9) = 0.5;
// Quanti raggi totali orbitano intorno alla montagna
uniform float densita_raggi : hint_range(2.0, 50.0) = 15.0;
group_uniforms Animazione;
// 3. MOVIMENTO: Alza questo valore per aumentare la velocità dello sfarfallio dei raggi
uniform float velocita_movimento : hint_range(0.0, 3.0) = 0.5;
uniform float attenuazione_altezza : hint_range(0.1, 3.0) = 1.0;
void fragment() {
// Coordinate polari basate sul centro dinamico impostato dall'utente
vec2 uv_centrate = UV - centro_raggi;
float angolo = atan(uv_centrate.y, uv_centrate.x);
float distanza = length(uv_centrate);
// Sistema di animazione a due onde incrociate per un movimento vivo e fluttuante
float onda1 = sin(angolo * densita_raggi + TIME * velocita_movimento);
float onda2 = cos(angolo * (densita_raggi * 0.65) - TIME * (velocita_movimento * 1.2));
// Uniamo le onde e rimappiamo il totale tra 0.0 e 1.0
float pattern_raggi = (onda1 + onda2) * 0.5;
pattern_raggi = pattern_raggi * 0.5 + 0.5;
// Applichiamo il controllo sulla larghezza delle strisce tramite lo smoothstep
float fasci_luce = smoothstep(1.0 - larghezza_raggi, (1.0 - larghezza_raggi) + 0.15, pattern_raggi);
// Dissolvenza verso l'alto (più vanno alti, più sfumano nel cielo)
float sfumatura_distanza = smoothstep(1.0, 0.0, distanza * attenuazione_altezza);
// Taglio netto inferiore: impedisce ai raggi di andare verso il basso se alzi il centro
float sfumatura_base = smoothstep(0.0, 0.15, uv_centrate.y);
// Output Finale
ALBEDO = colore_raggi;
ALPHA = fasci_luce * sfumatura_distanza * sfumatura_base * opacita_generale;
}

View File

@@ -0,0 +1 @@
uid://bhqtjjs3emv7f

View File

@@ -0,0 +1,33 @@
shader_type spatial;
// unshaded = ignora le luci del mondo (è un glow autonomo)
// blend_mix = trasparenza classica (usa blend_add se vuoi un effetto neon che si somma allo sfondo)
render_mode unshaded, blend_mix, depth_draw_never, cull_disabled;
uniform vec4 glow_color : source_color = vec4(1.0, 0.5, 0.1, 0.5);
uniform float glow_intensity : hint_range(0.0, 5.0) = 1.0;
uniform float falloff_power : hint_range(0.1, 10.0) = 2.0; // Più è alto, più il centro è denso e i bordi sfumati
group_uniforms Modalita_Forma;
uniform bool modalita_rettangolo = true; // Attiva per i titoli, disattiva per sfere/luci tonde
uniform vec2 rettangolo_morbidezza = vec2(0.2, 0.4); // Quanto sfumano i bordi su X e su Y
void fragment() {
float mask = 0.0;
if (modalita_rettangolo) {
// Crea una sfumatura che parte da 0 sui quattro bordi del rettangolo e va a 1 al centro
vec2 edge_fade = smoothstep(vec2(0.0), rettangolo_morbidezza, UV) * smoothstep(vec2(0.0), rettangolo_morbidezza, vec2(1.0) - UV);
mask = edge_fade.x * edge_fade.y;
} else {
// Sfumatura circolare perfetta basata sulla distanza dal centro del piano
float dist = length(UV - vec2(0.5));
mask = smoothstep(0.5, 0.0, dist);
}
// Applica la curva di decadimento per rendere la transizione ultra-morbida
mask = pow(mask, falloff_power);
// Output finale
ALBEDO = glow_color.rgb;
ALPHA = glow_color.a * mask * glow_intensity;
}

View File

@@ -0,0 +1 @@
uid://cv4fkugqv82sb

View File

@@ -1,24 +1,127 @@
[gd_scene format=3 uid="uid://cgkqj51u6p8dn"] [gd_scene format=3 uid="uid://cgkqj51u6p8dn"]
[ext_resource type="PackedScene" uid="uid://cmuvmmp7xam4o" path="res://core/daynight/environment_management.tscn" id="1_2o8pc"] [ext_resource type="PackedScene" uid="uid://cmuvmmp7xam4o" path="res://core/daynight/environment_management.tscn" id="1_2o8pc"]
[ext_resource type="Resource" uid="uid://dufa43jysup7" path="res://tgcc/main menu/menu.tres" id="2_vvb5q"]
[ext_resource type="PackedScene" uid="uid://bmwmdsdyfxfc1" path="res://tgcc/map/map_1/map_menu.tscn" id="2_wbrya"] [ext_resource type="PackedScene" uid="uid://bmwmdsdyfxfc1" path="res://tgcc/map/map_1/map_menu.tscn" id="2_wbrya"]
[ext_resource type="Shader" uid="uid://bneue3fq71vp8" path="res://tgcc/main menu/sky_test.gdshader" id="3_5p27e"] [ext_resource type="Shader" uid="uid://cpgtj8mhjklb8" path="res://tgcc/chunk/prop/cloud/cloud3d.gdshader" id="2_wcae3"]
[ext_resource type="Script" uid="uid://cx2tlvxhvatj5" path="res://docs/museums/daynight/control.gd" id="3_wbrya"] [ext_resource type="Script" uid="uid://cx2tlvxhvatj5" path="res://docs/museums/daynight/control.gd" id="3_wbrya"]
[ext_resource type="Texture2D" uid="uid://ibasu8f2j88u" path="res://tgcc/chunk/material/decal/store_capsule_logo_def.png" id="4_s4fdn"]
[ext_resource type="Texture2D" uid="uid://dest0qa7vaid0" path="res://core/daynight/stars_albedo.png" id="5_25h5j"] [ext_resource type="Texture2D" uid="uid://dest0qa7vaid0" path="res://core/daynight/stars_albedo.png" id="5_25h5j"]
[ext_resource type="Shader" uid="uid://bneue3fq71vp8" path="res://tgcc/main menu/sky_test.gdshader" id="5_87uwe"]
[ext_resource type="Script" uid="uid://brcimd12tx3dm" path="res://core/daynight/edge_detection_compositor.gd" id="6_4flsv"] [ext_resource type="Script" uid="uid://brcimd12tx3dm" path="res://core/daynight/edge_detection_compositor.gd" id="6_4flsv"]
[ext_resource type="Script" uid="uid://dboerd4a6dwj7" path="res://core/biome_generator/rails.gd" id="7_5p27e"] [ext_resource type="Script" uid="uid://dboerd4a6dwj7" path="res://core/biome_generator/rails.gd" id="7_5p27e"]
[ext_resource type="PackedScene" uid="uid://otptvwer4par" path="res://tgcc/train/train.tscn" id="8_ljvyb"] [ext_resource type="PackedScene" uid="uid://otptvwer4par" path="res://tgcc/train/train.tscn" id="8_ljvyb"]
[ext_resource type="Resource" uid="uid://bjnytgwt8tmf4" path="res://core/biome_generator/wagon_pool.tres" id="9_wcae3"] [ext_resource type="Resource" uid="uid://bjnytgwt8tmf4" path="res://core/biome_generator/wagon_pool.tres" id="9_wcae3"]
[ext_resource type="PackedScene" uid="uid://0kgjaqijaqku" path="res://docs/museums/biome_generator/rails.tscn" id="10_00nq7"] [ext_resource type="PackedScene" uid="uid://0kgjaqijaqku" path="res://docs/museums/biome_generator/rails.tscn" id="10_00nq7"]
[ext_resource type="PackedScene" uid="uid://dn1btv0e0ses7" path="res://core/fireworks.tscn" id="11_aylkj"] [ext_resource type="PackedScene" uid="uid://dn1btv0e0ses7" path="res://core/fireworks.tscn" id="11_aylkj"]
[ext_resource type="PackedScene" uid="uid://hvr66x101a0v" path="res://tgcc/chunk/prop/cloud/cloud_1.tscn" id="12_ljvyb"] [ext_resource type="PackedScene" uid="uid://ujv2f1l4d2ps" path="res://core/biome_generator/biome_generator.tscn" id="14_jgypt"]
[ext_resource type="Script" uid="uid://wv6kcqkibium" path="res://core/biome_generator/biome.gd" id="15_3blen"]
[ext_resource type="PackedScene" uid="uid://637i87ycw0q2" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_empty_04.tscn" id="16_w3xtw"]
[ext_resource type="Material" uid="uid://bp2yikej20rke" path="res://tgcc/chunk/prop/cloud/Cloud.tres" id="17_0aqpp"]
[ext_resource type="PackedScene" uid="uid://cl2ast2tk7ifw" path="res://tgcc/chunk/railway/scene/chunk_railway_curve.tscn" id="20_87uwe"]
[ext_resource type="Script" uid="uid://c374rv220mvh1" path="res://core/biome_generator/railway_pool.gd" id="20_oy1bb"]
[ext_resource type="PackedScene" uid="uid://cewdxvcpqb53f" path="res://tgcc/chunk/railway/scene/chunk_railway_station_doubleside.tscn" id="21_kgq5s"]
[ext_resource type="PackedScene" uid="uid://dgobym7krbqdr" path="res://tgcc/chunk/countryside/scene/fields/chunk_country_fields_corner_01.tscn" id="21_q33df"]
[ext_resource type="PackedScene" uid="uid://d3pcshw2bioic" path="res://tgcc/chunk/railway/scene/chunk_railway_station_oneside.tscn" id="22_61psf"]
[ext_resource type="PackedScene" uid="uid://cgbjvjvtlulyu" path="res://tgcc/chunk/countryside/scene/fields/chunk_country_fields_cross_3_02.tscn" id="22_oy1bb"]
[ext_resource type="PackedScene" uid="uid://bqxpqhla2kogq" path="res://tgcc/chunk/railway/scene/chunk_railway_straight.tscn" id="23_0aqpp"]
[ext_resource type="PackedScene" uid="uid://cs5tpcays3slb" path="res://tgcc/chunk/countryside/scene/fields/chunk_country_fields_empty.tscn" id="23_jrt8d"]
[ext_resource type="PackedScene" uid="uid://chs64ggbvy28i" path="res://tgcc/chunk/countryside/scene/fields/chunk_country_fields_end_01.tscn" id="24_da76s"]
[ext_resource type="PackedScene" uid="uid://c3ub6rj0tlt6q" path="res://tgcc/chunk/railway/scene/chunk_railway_straight_2.tscn" id="24_vvb5q"]
[ext_resource type="PackedScene" uid="uid://buiqa2mofucer" path="res://tgcc/chunk/countryside/scene/fields/chunk_country_fields_straight_02.tscn" id="25_bl6g7"]
[ext_resource type="PackedScene" uid="uid://cqevecsd1cm1v" path="res://tgcc/chunk/railway/scene/chunk_railway_straight_3.tscn" id="25_g1vc5"]
[ext_resource type="PackedScene" uid="uid://btwjdnho1cyav" path="res://tgcc/chunk/countryside/scene/fields/chunk_country_fields_straight_03.tscn" id="26_apxmr"]
[ext_resource type="PackedScene" uid="uid://f53hfrjaxkwa" path="res://tgcc/chunk/railway/scene/chunk_railway_straight_bridge.tscn" id="26_mrhmq"]
[ext_resource type="PackedScene" uid="uid://fi6faw7ag1i0" path="res://tgcc/chunk/railway/scene/chunk_railway_curve_3.tscn" id="27_4j5xl"]
[ext_resource type="PackedScene" uid="uid://cmxsc74ebqnju" path="res://tgcc/chunk/countryside/scene/fields/chunk_country_fields_straight_04.tscn" id="27_c1qt3"]
[ext_resource type="PackedScene" uid="uid://dglpoh63x2lpy" path="res://tgcc/chunk/railway/scene/chunk_railway_curve_4.tscn" id="28_5hxod"]
[ext_resource type="PackedScene" uid="uid://by3c73s5g5n53" path="res://tgcc/chunk/countryside/scene/fields/river/chunk_river_fields_curve_3.tscn" id="28_cx0op"]
[ext_resource type="PackedScene" uid="uid://djbish323kvt" path="res://tgcc/chunk/countryside/scene/fields/river/chunk_river_fields_end_1.tscn" id="29_7egjd"]
[ext_resource type="PackedScene" uid="uid://b4r0j5os1tka4" path="res://tgcc/chunk/countryside/scene/fields/river/chunk_river_fields_mix1_1.tscn" id="30_wrw4f"]
[ext_resource type="PackedScene" uid="uid://cpfsxacr75b5u" path="res://tgcc/chunk/countryside/scene/fields/river/chunk_river_fields_mix3_1.tscn" id="31_87uwe"]
[ext_resource type="PackedScene" uid="uid://bwrp04hg0h0wo" path="res://tgcc/chunk/countryside/scene/fields/river/chunk_river_fields_mix4_1.tscn" id="32_kgq5s"]
[ext_resource type="PackedScene" uid="uid://mlmtsppo4esq" path="res://tgcc/chunk/countryside/scene/fields/river/chunk_river_fields_mix6_1.tscn" id="33_61psf"]
[ext_resource type="PackedScene" uid="uid://ck0y8s6aj7t0n" path="res://tgcc/chunk/countryside/scene/fields/river/chunk_river_fields_straight_1.tscn" id="34_0aqpp"]
[ext_resource type="PackedScene" uid="uid://cjv1e8pc6gde1" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_corner_01.tscn" id="35_vvb5q"]
[ext_resource type="PackedScene" uid="uid://dqoai3665vb0a" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_corner_02.tscn" id="36_g1vc5"]
[ext_resource type="PackedScene" uid="uid://crlk31ecl480n" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_corner_03.tscn" id="37_mrhmq"]
[ext_resource type="PackedScene" uid="uid://brpp7fe5noq8v" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_cross_3_01.tscn" id="38_4j5xl"]
[ext_resource type="PackedScene" uid="uid://qmt8bkiksgj3" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_cross_3_02.tscn" id="39_5hxod"]
[ext_resource type="PackedScene" uid="uid://d1tfkhuktwthn" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_cross_3_03.tscn" id="40_cg70g"]
[ext_resource type="PackedScene" uid="uid://c73yk6858dmwn" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_cross_4_01.tscn" id="41_0hcuf"]
[ext_resource type="PackedScene" uid="uid://b8blm6bwintf7" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_empty_01.tscn" id="42_pnf06"]
[ext_resource type="PackedScene" uid="uid://s0lvtmct5aj2" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_empty_02.tscn" id="43_dk53a"]
[ext_resource type="PackedScene" uid="uid://dquhpx4si481r" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_empty_03.tscn" id="44_3e8o7"]
[ext_resource type="PackedScene" uid="uid://b002wu5ltuqi4" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_end_01.tscn" id="46_x3dq8"]
[ext_resource type="PackedScene" uid="uid://dtfmvcbninrcu" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_end_02.tscn" id="47_qtye1"]
[ext_resource type="PackedScene" uid="uid://h6xj43vo84uf" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_straight_01.tscn" id="48_lb04u"]
[ext_resource type="PackedScene" uid="uid://cu2chsjh8wuvp" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_straight_02.tscn" id="49_8yrkd"]
[ext_resource type="PackedScene" uid="uid://pxmcy0lhne5d" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_straight_03.tscn" id="50_degqg"]
[ext_resource type="PackedScene" uid="uid://c5rcq82mn1vv7" path="res://tgcc/chunk/countryside/scene/rice/chunk_country_straight_04.tscn" id="51_m2g0k"]
[ext_resource type="PackedScene" uid="uid://cqe4t842io22i" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_cross_1.tscn" id="52_t0vjt"]
[ext_resource type="PackedScene" uid="uid://q26mkh3cupic" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_cross_2.tscn" id="53_onf87"]
[ext_resource type="PackedScene" uid="uid://bs3dkwcc8w2uk" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_curve_1.tscn" id="54_uikmt"]
[ext_resource type="PackedScene" uid="uid://ce6qvpb27fdpo" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_curve_2.tscn" id="55_wqk7x"]
[ext_resource type="PackedScene" uid="uid://ccgd3uy68r88h" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_curve_3.tscn" id="56_mct5v"]
[ext_resource type="PackedScene" uid="uid://deaxxlxdipqvx" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_end_1.tscn" id="57_vopi0"]
[ext_resource type="PackedScene" uid="uid://ct3084nflycla" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_mix1_1.tscn" id="58_gyi63"]
[ext_resource type="PackedScene" uid="uid://bhvmmw8d8vns5" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_mix2_1.tscn" id="59_tmr0c"]
[ext_resource type="PackedScene" uid="uid://rjvefmcd4bpo" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_mix3_1.tscn" id="60_fabvq"]
[ext_resource type="PackedScene" uid="uid://c6vpwol3k384y" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_mix4_1.tscn" id="61_eqvpo"]
[ext_resource type="PackedScene" uid="uid://cd3iyj71hkgcr" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_mix5_1.tscn" id="62_o2rfi"]
[ext_resource type="PackedScene" uid="uid://bh8kbw07bsu6n" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_mix6_1.tscn" id="63_rdfho"]
[ext_resource type="PackedScene" uid="uid://btipd6wev016d" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_straight_1.tscn" id="64_0qygb"]
[ext_resource type="PackedScene" uid="uid://c2mnl5l0c3o8t" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_straight_2.tscn" id="65_nsaed"]
[ext_resource type="PackedScene" uid="uid://ccg8aaxoghjpq" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_straight_3.tscn" id="66_gjvwf"]
[ext_resource type="PackedScene" uid="uid://7063xk3bwboc" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_straight_4.tscn" id="67_phi8g"]
[ext_resource type="PackedScene" uid="uid://mpgyaho52lii" path="res://tgcc/chunk/countryside/scene/rice/river/scene/chunk_river_straight_5.tscn" id="68_3tf04"]
[ext_resource type="PackedScene" uid="uid://bujym3ai10i7q" path="res://tgcc/chunk/countryside/scene/tea/chunk_country_tea_corner_01.tscn" id="69_2ahsh"]
[ext_resource type="PackedScene" uid="uid://bdfosig4g14vt" path="res://tgcc/chunk/countryside/scene/tea/chunk_country_tea_corner_02.tscn" id="70_j0my1"]
[ext_resource type="PackedScene" uid="uid://ffblnqib7fry" path="res://tgcc/chunk/countryside/scene/tea/chunk_country_tea_cross_3_01.tscn" id="71_6v8j8"]
[ext_resource type="PackedScene" uid="uid://b785qpoxbrovj" path="res://tgcc/chunk/countryside/scene/tea/chunk_country_tea_cross_3_02.tscn" id="72_ti8tr"]
[ext_resource type="PackedScene" uid="uid://dghfkqs1bhp56" path="res://tgcc/chunk/countryside/scene/tea/chunk_country_tea_empty.tscn" id="73_oyi2q"]
[ext_resource type="PackedScene" uid="uid://c0bgxecgl4qav" path="res://tgcc/chunk/countryside/scene/tea/chunk_country_tea_end_01.tscn" id="74_atmjp"]
[ext_resource type="PackedScene" uid="uid://cn1fr8wkb4k2w" path="res://tgcc/chunk/countryside/scene/tea/chunk_country_tea_end_02.tscn" id="75_46tek"]
[ext_resource type="PackedScene" uid="uid://bfbd7kvcd6uf6" path="res://tgcc/chunk/countryside/scene/tea/chunk_country_tea_end_03.tscn" id="76_xg6nk"]
[ext_resource type="PackedScene" uid="uid://che0eemntxhwf" path="res://tgcc/chunk/countryside/scene/tea/chunk_country_tea_straight_02.tscn" id="77_tjl0j"]
[ext_resource type="PackedScene" uid="uid://dvl8dae0u2abx" path="res://tgcc/chunk/countryside/scene/tea/chunk_country_tea_straight_03.tscn" id="78_grfqq"]
[ext_resource type="Resource" uid="uid://cmd6s6thq4f7r" path="res://core/biome_generator/entities_pool.tres" id="78_xg6nk"]
[ext_resource type="PackedScene" uid="uid://c7f64uvjdoq65" path="res://tgcc/chunk/countryside/scene/tea/chunk_country_tea_straight_04.tscn" id="79_ifm82"]
[ext_resource type="PackedScene" uid="uid://bw8dg3705vl07" path="res://tgcc/chunk/countryside/scene/tea/river/chunk_river_tea_curve_3.tscn" id="80_12q61"]
[ext_resource type="PackedScene" uid="uid://blco6nv1806fh" path="res://tgcc/chunk/countryside/scene/tea/river/chunk_river_tea_end_1.tscn" id="81_8s2c6"]
[ext_resource type="PackedScene" uid="uid://51pjkj11tyg0" path="res://tgcc/chunk/countryside/scene/tea/river/chunk_river_tea_mix1_1.tscn" id="82_sbpv7"]
[ext_resource type="PackedScene" uid="uid://dvqsjv10xymt0" path="res://tgcc/chunk/countryside/scene/tea/river/chunk_river_tea_mix3_1.tscn" id="83_ogh8f"]
[ext_resource type="PackedScene" uid="uid://c1x1ymwqgv6kn" path="res://tgcc/chunk/countryside/scene/tea/river/chunk_river_tea_mix4_1.tscn" id="84_pok0w"]
[ext_resource type="PackedScene" uid="uid://bngs7h05fppfy" path="res://tgcc/chunk/countryside/scene/tea/river/chunk_river_tea_mix6_1.tscn" id="85_78qtq"]
[ext_resource type="PackedScene" uid="uid://dn4jmmit4td1d" path="res://tgcc/chunk/countryside/scene/tea/river/chunk_river_tea_straight_1.tscn" id="86_8hw7h"]
[ext_resource type="PackedScene" uid="uid://cykkwpsq7d3ex" path="res://tgcc/chunk/countryside/scene/tea/river/chunk_river_tea_straight_5.tscn" id="87_sionv"]
[ext_resource type="PackedScene" uid="uid://dre1jaoxug015" path="res://tgcc/chunk/prop/fuji/fuji_2.tscn" id="99_61psf"]
[ext_resource type="PackedScene" uid="uid://c8fk1kxpkxpm2" path="res://tgcc/chunk/prop/fuji/fuji.tscn" id="100_0aqpp"]
[ext_resource type="PackedScene" uid="uid://c3alhtb3083qs" path="res://core/game_menu/option_menu_button.tscn" id="100_g1vc5"]
[ext_resource type="Shader" uid="uid://d0ch5ofrgf7y6" path="res://core/daynight/trunk_shader.gdshader" id="100_vvb5q"]
[ext_resource type="Texture2D" uid="uid://cu8e7pl0y4owq" path="res://core/game_menu/assets/page_3/settings_button.png" id="101_mrhmq"]
[ext_resource type="Texture2D" uid="uid://v7e7467fkdec" path="res://core/game_menu/assets/page_3/quit_button.png" id="102_4j5xl"]
[ext_resource type="Shader" uid="uid://bhqtjjs3emv7f" path="res://tgcc/main menu/godraysmenu.gdshader" id="103_g1vc5"]
[ext_resource type="PackedScene" uid="uid://cp2vmysawnuql" path="res://tgcc/chunk/prop/sign/scene/signMenu.tscn" id="103_mrhmq"]
[ext_resource type="Material" uid="uid://dljvvppsdbjd1" path="res://tgcc/chunk/material/glowplane.tres" id="104_mrhmq"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_00nq7"]
render_priority = 0
shader = ExtResource("2_wcae3")
shader_parameter/cloud_color = Color(0.95, 0.95, 0.98, 1)
shader_parameter/shadow_color = Color(0.4, 0.45, 0.65, 1)
shader_parameter/rim_color = Color(1, 0.6, 0.4, 1)
shader_parameter/shadow_threshold = -0.1
shader_parameter/shadow_softness = 0.05
shader_parameter/rim_size = 0.35
shader_parameter/rim_softness = 0.1
[sub_resource type="ShaderMaterial" id="ShaderMaterial_nbjr8"] [sub_resource type="ShaderMaterial" id="ShaderMaterial_nbjr8"]
shader = ExtResource("3_5p27e") shader = ExtResource("5_87uwe")
shader_parameter/sky_top_color = Color(0.36438444, 0.6417803, 0.8712311, 1) shader_parameter/sky_top_color = Color(0.36438444, 0.6417803, 0.8712311, 1)
shader_parameter/sky_horizon_color = Color(0.75821966, 0.8417803, 0.92534095, 1) shader_parameter/sky_horizon_color = Color(0.75821966, 0.8417803, 0.92534095, 1)
shader_parameter/night_intensity = 0.0 shader_parameter/night_intensity = 0.0
shader_parameter/horizon_height = 0.066000003135 shader_parameter/horizon_height = 0.1
shader_parameter/horizon_blur = 0.4 shader_parameter/horizon_blur = 0.4
shader_parameter/star_density = 1500.0 shader_parameter/star_density = 1500.0
shader_parameter/star_rarity = 2500.0 shader_parameter/star_rarity = 2500.0
@@ -47,7 +150,6 @@ ssao_detail = 0.0
ssil_enabled = true ssil_enabled = true
glow_enabled = true glow_enabled = true
glow_levels/4 = 1.0 glow_levels/4 = 1.0
glow_intensity = 0.4
glow_strength = 0.65 glow_strength = 0.65
glow_bloom = 1.0 glow_bloom = 1.0
fog_enabled = true fog_enabled = true
@@ -76,27 +178,114 @@ compositor_effects = Array[CompositorEffect]([SubResource("CompositorEffect_q52t
closed = true closed = true
bake_interval = 50.0 bake_interval = 50.0
_data = { _data = {
"points": PackedVector3Array(0, 0, 0, 0, 0, 0, 3.5, 0, 0, 0, 0, 0, 0, 0, 0, 3.5, 0, 20, 0, 0, 0, 0, 0, 0, 3.5, 0, 40, 0, 0, 0, 0, 0, 0, 3.5, 0, 60, 0, 0, 0, 0, 0, 0, 3.5, 0, 80, 0, 0, 0, 0, 0, 0, 3.5, 0, 100), "points": PackedVector3Array(0, 0, 0, 0, 0, 0, 3.5, 0, 0, 0, 0, 0, 0, 0, 0, 3.5, 0, 100),
"tilts": PackedFloat32Array(0, 0, 0, 0, 0, 0) "tilts": PackedFloat32Array(0, 0)
} }
point_count = 6 point_count = 2
[sub_resource type="PlaneMesh" id="PlaneMesh_00nq7"]
[sub_resource type="PlaneMesh" id="PlaneMesh_tf5c3"]
flip_faces = true
[sub_resource type="PlaneMesh" id="PlaneMesh_ss5dh"]
flip_faces = true
[sub_resource type="Resource" id="Resource_jrt8d"]
script = ExtResource("20_oy1bb")
name = "Railway Pool"
available_railways = Array[PackedScene]([ExtResource("20_87uwe"), ExtResource("21_kgq5s"), ExtResource("22_61psf"), ExtResource("23_0aqpp"), ExtResource("24_vvb5q"), ExtResource("25_g1vc5"), ExtResource("26_mrhmq"), ExtResource("27_4j5xl"), ExtResource("28_5hxod")])
[sub_resource type="Resource" id="Resource_n3osn"]
script = ExtResource("15_3blen")
name = "countryside"
available_chunks = Array[PackedScene]([ExtResource("21_q33df"), ExtResource("22_oy1bb"), ExtResource("23_jrt8d"), ExtResource("24_da76s"), ExtResource("25_bl6g7"), ExtResource("26_apxmr"), ExtResource("27_c1qt3"), ExtResource("28_cx0op"), ExtResource("29_7egjd"), ExtResource("30_wrw4f"), ExtResource("31_87uwe"), ExtResource("32_kgq5s"), ExtResource("33_61psf"), ExtResource("34_0aqpp"), ExtResource("35_vvb5q"), ExtResource("36_g1vc5"), ExtResource("37_mrhmq"), ExtResource("38_4j5xl"), ExtResource("39_5hxod"), ExtResource("40_cg70g"), ExtResource("41_0hcuf"), ExtResource("42_pnf06"), ExtResource("43_dk53a"), ExtResource("44_3e8o7"), ExtResource("16_w3xtw"), ExtResource("46_x3dq8"), ExtResource("47_qtye1"), ExtResource("48_lb04u"), ExtResource("49_8yrkd"), ExtResource("50_degqg"), ExtResource("51_m2g0k"), ExtResource("52_t0vjt"), ExtResource("53_onf87"), ExtResource("54_uikmt"), ExtResource("55_wqk7x"), ExtResource("56_mct5v"), ExtResource("57_vopi0"), ExtResource("58_gyi63"), ExtResource("59_tmr0c"), ExtResource("60_fabvq"), ExtResource("61_eqvpo"), ExtResource("62_o2rfi"), ExtResource("63_rdfho"), ExtResource("64_0qygb"), ExtResource("65_nsaed"), ExtResource("66_gjvwf"), ExtResource("67_phi8g"), ExtResource("68_3tf04"), ExtResource("69_2ahsh"), ExtResource("70_j0my1"), ExtResource("71_6v8j8"), ExtResource("72_ti8tr"), ExtResource("73_oyi2q"), ExtResource("74_atmjp"), ExtResource("75_46tek"), ExtResource("76_xg6nk"), ExtResource("77_tjl0j"), ExtResource("78_grfqq"), ExtResource("79_ifm82"), ExtResource("80_12q61"), ExtResource("81_8s2c6"), ExtResource("82_sbpv7"), ExtResource("83_ogh8f"), ExtResource("84_pok0w"), ExtResource("85_78qtq"), ExtResource("86_8hw7h"), ExtResource("87_sionv")])
metadata/_custom_type_script = "uid://wv6kcqkibium"
[sub_resource type="ShaderMaterial" id="ShaderMaterial_g1vc5"]
render_priority = 0
shader = ExtResource("100_vvb5q")
shader_parameter/albedo_color = Color(0.20906344, 0.22397816, 0.17167854, 1)
shader_parameter/use_texture = true
shader_parameter/uv_scale = Vector2(3, 3)
shader_parameter/palette_shift_y = 0.0
shader_parameter/gradient_start_y = 0.0
shader_parameter/gradient_end_y = 1.5
shader_parameter/light_steps = 6.0
shader_parameter/step_softness = 0.06800000253148
shader_parameter/shadow_color = Color(0.4, 0.4, 0.6, 1)
shader_parameter/shadow_offset = 0.0
shader_parameter/cast_shadow_strength = 0.6
shader_parameter/use_ghibli_glint = true
shader_parameter/glint_color = Color(1, 0.95, 0.85, 1)
shader_parameter/glint_intensity = 1.0
shader_parameter/glint_sharpness = 32.0
shader_parameter/emission_color = Color(0.7852906, 0.29383978, 0.017263923, 1)
shader_parameter/emission_energy = 4.9350002344125
[sub_resource type="ShaderMaterial" id="ShaderMaterial_vvb5q"]
render_priority = 0
shader = ExtResource("100_vvb5q")
shader_parameter/albedo_color = Color(0.20906344, 0.22397816, 0.17167854, 1)
shader_parameter/use_texture = true
shader_parameter/uv_scale = Vector2(3, 3)
shader_parameter/palette_shift_y = 0.0
shader_parameter/gradient_start_y = 0.0
shader_parameter/gradient_end_y = 10.0
shader_parameter/light_steps = 6.0
shader_parameter/step_softness = 0.06800000253148
shader_parameter/shadow_color = Color(0.4, 0.4, 0.6, 1)
shader_parameter/shadow_offset = 0.0
shader_parameter/cast_shadow_strength = 0.6
shader_parameter/use_ghibli_glint = true
shader_parameter/glint_color = Color(1, 0.95, 0.85, 1)
shader_parameter/glint_intensity = 1.0
shader_parameter/glint_sharpness = 32.0
shader_parameter/emission_color = Color(0.78431374, 0.29411766, 0.015686275, 1)
shader_parameter/emission_energy = 5.0000002375
[sub_resource type="PlaneMesh" id="PlaneMesh_mrhmq"]
size = Vector2(400, 200)
orientation = 2
[sub_resource type="ShaderMaterial" id="ShaderMaterial_4j5xl"]
render_priority = 0
shader = ExtResource("103_g1vc5")
shader_parameter/colore_raggi = Color(1, 0.85, 0.6, 1)
shader_parameter/opacita_generale = 0.050000002375
shader_parameter/centro_raggi = Vector2(0.5, 0)
shader_parameter/larghezza_raggi = 0.59000002476512
shader_parameter/densita_raggi = 50.0
shader_parameter/velocita_movimento = 0.50000002375
shader_parameter/attenuazione_altezza = 1.3550000611026198
[sub_resource type="PlaneMesh" id="PlaneMesh_g1vc5"]
size = Vector2(300, 50)
[sub_resource type="PlaneMesh" id="PlaneMesh_4j5xl"]
uv2_padding = 1.7
size = Vector2(600, 300)
[node name="MainMenu" type="Node3D" unique_id=448381304] [node name="MainMenu" type="Node3D" unique_id=448381304]
transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0, 0, 0) transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0, 0, 0)
[node name="EnvironmentManager" parent="." unique_id=1611939731 instance=ExtResource("1_2o8pc")] [node name="EnvironmentManager" parent="." unique_id=1611939731 instance=ExtResource("1_2o8pc")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.822516, 0, 1.9254212) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.822516, 0, 1.9254212)
environment_config = ExtResource("2_vvb5q")
cloud_material = SubResource("ShaderMaterial_00nq7")
[node name="Camera3D" type="Camera3D" parent="." unique_id=759297292] [node name="Camera3D" type="Camera3D" parent="." unique_id=759297292]
transform = Transform3D(-1, -7.619397e-09, 8.709011e-08, 0, 0.9961947, 0.08715574, -8.742278e-08, 0.08715574, -0.9961947, 3.098, 7.415, -13.09) transform = Transform3D(-1, -7.619397e-09, 8.709011e-08, 0, 0.9961947, 0.08715574, -8.742278e-08, 0.08715574, -0.9961947, 3.098, 7.415, -10.92)
fov = 70.0 fov = 80.0
size = 11.429 size = 11.429
[node name="Control" type="Control" parent="." unique_id=199803985] [node name="Control" type="Control" parent="." unique_id=199803985]
layout_mode = 3 layout_mode = 3
anchors_preset = 0 anchors_preset = 15
offset_right = 40.0 anchor_right = 1.0
offset_bottom = 40.0 anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("3_wbrya") script = ExtResource("3_wbrya")
[node name="Snow" type="CheckButton" parent="Control" unique_id=769304933] [node name="Snow" type="CheckButton" parent="Control" unique_id=769304933]
@@ -338,7 +527,7 @@ directional_shadow_mode = 0
directional_shadow_max_distance = 200.0 directional_shadow_max_distance = 200.0
[node name="rail" type="Path3D" parent="." unique_id=28337754] [node name="rail" type="Path3D" parent="." unique_id=28337754]
transform = Transform3D(1.3113416e-07, 0, 1, 0, 1, 0, -1, 0, 1.3113416e-07, -47.124043, 2, 3.4257338) transform = Transform3D(1.3113416e-07, 0, 1, 0, 1, 0, -1, 0, 1.3113416e-07, -47.25185, 1.7218199, 3.4257338)
curve = SubResource("Curve3D_263ax") curve = SubResource("Curve3D_263ax")
script = ExtResource("7_5p27e") script = ExtResource("7_5p27e")
train_model = ExtResource("8_ljvyb") train_model = ExtResource("8_ljvyb")
@@ -350,40 +539,136 @@ sleepers_model = ExtResource("10_00nq7")
fireworks_scene = ExtResource("11_aylkj") fireworks_scene = ExtResource("11_aylkj")
[node name="MainMap" parent="." unique_id=1895741703 instance=ExtResource("2_wbrya")] [node name="MainMap" parent="." unique_id=1895741703 instance=ExtResource("2_wbrya")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 63.837585, 0, -4.743943e-06) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 63.069893, 0, -4.743943e-06)
[node name="cloud1" parent="." unique_id=1538081576 instance=ExtResource("12_ljvyb")] [node name="MeshInstance3D" type="MeshInstance3D" parent="." unique_id=1523044435]
transform = Transform3D(-3.0750962e-07, 0, 7.035, 0, 7.035, 0, -7.035, 0, -3.0750962e-07, 203.62189, 53.997868, 215.32469) transform = Transform3D(-80.07708, -1.0239479e-05, 4.277144e-13, 0, -2.9642006e-06, -64.80289, 1.2091303e-05, -67.813, 2.832624e-06, 308.45245, 59.279312, 332.5165)
cast_shadow = 0
mesh = SubResource("PlaneMesh_00nq7")
surface_material_override/0 = ExtResource("17_0aqpp")
[node name="cloud2" parent="." unique_id=953705227 instance=ExtResource("12_ljvyb")] [node name="MeshInstance3D8" type="MeshInstance3D" parent="." unique_id=700685887]
transform = Transform3D(1.6706831e-07, 1.1604034e-06, 32.595, 32.052925, -3.165528, 0, 3.8220775, 26.546934, -1.4247728e-06, 391.87766, 43.10347, 332.97614) transform = Transform3D(-102.76, -1.5355214e-05, 6.6584504e-13, 0, -4.445142e-06, -100.882, 1.5516329e-05, -101.693, 4.4096923e-06, 308.88962, 87.955734, 253.48846)
cast_shadow = 0
mesh = SubResource("PlaneMesh_00nq7")
surface_material_override/0 = ExtResource("17_0aqpp")
[node name="cloud6" parent="." unique_id=141140018 instance=ExtResource("12_ljvyb")] [node name="MeshInstance3D2" type="MeshInstance3D" parent="." unique_id=979528118]
transform = Transform3D(1.6706831e-07, 1.1604034e-06, 32.595, 32.052925, -3.165528, 0, 3.8220775, 26.546934, -1.4247728e-06, 391.87766, -65.08275, 173.45769) transform = Transform3D(92.25, 5.803644e-06, -2.5166788e-13, 0, -3.990456e-06, -90.565, -5.864611e-06, 91.291, -3.958722e-06, -286.00787, 10.153786, 357.9332)
cast_shadow = 0
mesh = SubResource("PlaneMesh_tf5c3")
surface_material_override/0 = ExtResource("17_0aqpp")
[node name="cloud7" parent="." unique_id=329542413 instance=ExtResource("12_ljvyb")] [node name="MeshInstance3D5" type="MeshInstance3D" parent="." unique_id=326273857]
transform = Transform3D(1.6706831e-07, 1.1604034e-06, 32.595, 32.052925, -3.165528, 0, 3.8220775, 26.546934, -1.4247728e-06, 391.87766, 178.66306, 202.5226) transform = Transform3D(165.29848, 7.2594685e-06, -3.5258244e-13, 0, -4.991448e-06, -126.88, -1.0508524e-05, 114.19102, -5.546101e-06, -286.30368, 61.161095, 256.40826)
cast_shadow = 0
mesh = SubResource("PlaneMesh_ss5dh")
surface_material_override/0 = ExtResource("17_0aqpp")
[node name="cloud8" parent="." unique_id=1444868324 instance=ExtResource("12_ljvyb")] [node name="biome_generator" parent="." unique_id=1861369341 node_paths=PackedStringArray("rail_path") instance=ExtResource("14_jgypt")]
transform = Transform3D(-3.0750962e-07, 0, 7.035, 0, 7.035, 0, -7.035, 0, -3.0750962e-07, 46.042877, 53.997868, 215.32469) rail_path = NodePath("../rail")
railway_pool = SubResource("Resource_jrt8d")
biome_list = Array[ExtResource("15_3blen")]([SubResource("Resource_n3osn")])
entity_pool = ExtResource("78_xg6nk")
entity_spawn_probability = 1.0
max_entities_per_chunk = 5
eye_line = 8
lamppost_max_wire_distance = 0.0
[node name="cloud9" parent="." unique_id=468105212 instance=ExtResource("12_ljvyb")] [node name="Fuji2" parent="." unique_id=842328745 instance=ExtResource("99_61psf")]
transform = Transform3D(1.6706831e-07, 1.1604034e-06, 32.595, 32.052925, -3.165528, 0, 3.8220775, 26.546934, -1.4247728e-06, -338.22726, 43.10347, 332.97617) transform = Transform3D(0.09337742, 0, 0.9715159, 0, 0.5685182, 0, -0.3828171, 0, 0.23697394, -236.37123, -4.8100815, 216.00096)
[node name="cloud10" parent="." unique_id=1831290273 instance=ExtResource("12_ljvyb")] [node name="Fuji3" parent="." unique_id=2039882802 instance=ExtResource("99_61psf")]
transform = Transform3D(1.6706831e-07, 1.1604034e-06, 32.595, 32.052925, -3.165528, 0, 3.8220775, 26.546934, -1.4247728e-06, -338.22726, -65.08275, 173.45772) transform = Transform3D(-0.09359112, 0, 0.9713834, 0, 0.56225973, 0, -0.38276488, 0, -0.23751618, 239.46135, 0, 210.85814)
[node name="cloud11" parent="." unique_id=358903943 instance=ExtResource("12_ljvyb")] [node name="Fuji4" parent="." unique_id=930179001 instance=ExtResource("99_61psf")]
transform = Transform3D(1.6706831e-07, 1.1604034e-06, 32.595, 32.052925, -3.165528, 0, 3.8220775, 26.546934, -1.4247728e-06, -338.22726, 178.66306, 202.52263) transform = Transform3D(-0.09359112, 0, 0.9713834, 0, 0.56225973, 0, -0.38276488, 0, -0.23751618, 239.46135, 1.7057877, 224.6928)
[node name="cloud3" parent="." unique_id=624295053 instance=ExtResource("12_ljvyb")] [node name="Landscape" parent="Fuji4" index="0" unique_id=244602034]
transform = Transform3D(-4.9415723e-07, 0, 11.305, 0, 11.305, 0, -11.305, 0, -4.9415723e-07, -214.15395, 53.997868, 215.32469) transform = Transform3D(28.638817, 1.7053026e-13, -7.6293945e-06, 0, 13.6219845, 2.1621709e-06, 0, -1.0284306e-06, 28.638834, -10.786804, 5.0069, 17.382736)
surface_material_override/0 = SubResource("ShaderMaterial_g1vc5")
[node name="cloud4" parent="." unique_id=1608207264 instance=ExtResource("12_ljvyb")] [node name="Fuji5" parent="." unique_id=1070037082 instance=ExtResource("99_61psf")]
transform = Transform3D(6.5393685e-08, 5.484083e-07, 12.635, 12.54612, -1.4960332, 0, 1.4960332, 12.54612, -5.522934e-07, -244.47647, 64.2054, 242.8301) transform = Transform3D(0.0935979, 0, 0.9713791, 0, 0.56225973, 0, -0.38276324, 0, 0.23753339, -275.95566, -3.4616928, 232.02234)
[node name="cloud5" parent="." unique_id=9405030 instance=ExtResource("12_ljvyb")] [node name="Landscape" parent="Fuji5" index="0" unique_id=244602034]
transform = Transform3D(-7.8421215e-07, -4.957583e-07, 21.225, -11.341628, 17.940683, 0, -17.940683, -11.341628, -9.2777424e-07, -309.56183, 75.29676, 291.66757) transform = Transform3D(28.638819, 1.7053026e-13, -7.6293945e-06, 0, 13.6219845, 2.1621709e-06, 0, -1.0284306e-06, 28.638836, -10.786743, 6.703195, 17.382767)
surface_material_override/0 = SubResource("ShaderMaterial_g1vc5")
[node name="Fuji" parent="." unique_id=265091139 instance=ExtResource("100_0aqpp")]
transform = Transform3D(-4.88843, -0.020050459, 0.86837775, -0.010355438, 4.9646697, 0.0563373, -0.86854756, 0.053657297, -4.8881464, 23.802309, -0.98594666, 495.7)
[node name="Fuji6" parent="." unique_id=150126281 instance=ExtResource("100_0aqpp")]
transform = Transform3D(-5.287449, -0.020231497, 0.22351237, -0.011200703, 5.009496, 0.014500697, -0.9394429, 0.05414178, -1.2581636, 32.446022, 15.848213, 525.54346)
[node name="Mt Fuji_simplified_3d_mesh" parent="Fuji6" index="0" unique_id=1389340781]
transform = Transform3D(0.5151193, -0.011206273, -0.07264297, 0.077138014, 0.07483422, 0.48510167, 3.5762787e-07, -0.4938935, 0.07515043, 6.299696, 12.244916, 3.004303)
surface_material_override/0 = SubResource("ShaderMaterial_vvb5q")
[node name="godrays" type="MeshInstance3D" parent="." unique_id=1749824118]
transform = Transform3D(2.815, -4.250532e-07, 4.250532e-07, -4.250532e-07, -2.815, 0, 4.250532e-07, -6.418125e-14, -2.815, 6.0080514, 313.92493, 537.49884)
mesh = SubResource("PlaneMesh_mrhmq")
surface_material_override/0 = SubResource("ShaderMaterial_4j5xl")
[node name="TextureRect" type="TextureRect" parent="." unique_id=42270833]
anchors_preset = 5
anchor_left = 0.5
anchor_right = 0.5
offset_left = -363.0
offset_top = 53.0
offset_right = 363.0
offset_bottom = 320.0
grow_horizontal = 2
scale = Vector2(1.115, 1.115)
pivot_offset_ratio = Vector2(0.5, 0.5)
texture = ExtResource("4_s4fdn")
[node name="PlayButton" parent="." unique_id=600844315 instance=ExtResource("100_g1vc5")]
unique_name_in_owner = true
custom_minimum_size = Vector2(310, 100)
offset_left = 1382.0
offset_top = 565.00006
offset_right = 1390.0
offset_bottom = 575.00006
rotation = -0.009196131
[node name="SettingsButton" parent="." unique_id=1859615781 instance=ExtResource("100_g1vc5")]
unique_name_in_owner = true
custom_minimum_size = Vector2(310, 100)
offset_left = 1373.0
offset_top = 710.0
offset_right = 1381.0
offset_bottom = 720.0
rotation = 0.06252365
image = ExtResource("101_mrhmq")
[node name="QuitButton" parent="." unique_id=651503398 instance=ExtResource("100_g1vc5")]
unique_name_in_owner = true
custom_minimum_size = Vector2(303.115, 100)
offset_left = 1398.0
offset_top = 865.0
offset_right = 1406.0
offset_bottom = 875.0
rotation = 0.022713656
image = ExtResource("102_4j5xl")
[node name="Sign" parent="." unique_id=1434874277 instance=ExtResource("103_mrhmq")]
transform = Transform3D(-0.018105423, -0.08729696, 1.6876467, 0.3427237, 1.6524807, 0.08915475, -1.6547844, 0.3432014, -7.853079e-08, 0.94805247, 4.0550222, -8.807153)
[node name="MeshInstance3D3" type="MeshInstance3D" parent="." unique_id=1950247032]
transform = Transform3D(1.5203506, -0.44894534, 0.030680113, -0.021315442, 0.030708417, 1.7382143, -0.4068166, -1.6794026, 0.023582276, 276.50534, 23.57726, 236.73982)
mesh = SubResource("PlaneMesh_g1vc5")
surface_material_override/0 = ExtResource("104_mrhmq")
[node name="MeshInstance3D4" type="MeshInstance3D" parent="." unique_id=629597316]
transform = Transform3D(1.4397906, 0.70180196, 0.030680114, -0.03402824, 0.009193684, 1.7382141, 0.6350316, -1.5906845, 0.023582274, -288.67242, 33.770287, 220.70956)
mesh = SubResource("PlaneMesh_g1vc5")
surface_material_override/0 = ExtResource("104_mrhmq")
[node name="MeshInstance3D6" type="MeshInstance3D" parent="." unique_id=2144255861]
transform = Transform3D(1.6832176, -0.017943796, 0.008806392, -0.013573697, 0.01762575, 1.0548786, -0.02886198, -1.0547605, 0.017477933, -8.321105, 61.167877, 523.8041)
mesh = SubResource("PlaneMesh_4j5xl")
surface_material_override/0 = ExtResource("104_mrhmq")
[connection signal="toggled" from="Control/Snow" to="Control" method="_on_snow_toggled"] [connection signal="toggled" from="Control/Snow" to="Control" method="_on_snow_toggled"]
[connection signal="toggled" from="Control/Rain" to="Control" method="_on_rain_toggled"] [connection signal="toggled" from="Control/Rain" to="Control" method="_on_rain_toggled"]
@@ -400,3 +685,7 @@ transform = Transform3D(-7.8421215e-07, -4.957583e-07, 21.225, -11.341628, 17.94
[connection signal="pressed" from="Control/RandomWeather" to="Control" method="_on_random_weather_pressed"] [connection signal="pressed" from="Control/RandomWeather" to="Control" method="_on_random_weather_pressed"]
[connection signal="toggled" from="Control/Fog" to="Control" method="_on_fog_toggled"] [connection signal="toggled" from="Control/Fog" to="Control" method="_on_fog_toggled"]
[connection signal="pressed" from="Control/UpdateRails" to="Control" method="_on_update_rails_pressed"] [connection signal="pressed" from="Control/UpdateRails" to="Control" method="_on_update_rails_pressed"]
[editable path="Fuji4"]
[editable path="Fuji5"]
[editable path="Fuji6"]

94
tgcc/main menu/menu.tres Normal file
View File

@@ -0,0 +1,94 @@
[gd_resource type="Resource" script_class="EnvironmentConfig" format=3 uid="uid://dufa43jysup7"]
[ext_resource type="Shader" uid="uid://7vwkfffa5vao" path="res://core/daynight/clouds_shadow.gdshader" id="1_glk67"]
[ext_resource type="Shader" uid="uid://cq4vlcj8cuvge" path="res://core/daynight/fog.gdshader" id="2_jx3gj"]
[ext_resource type="Script" uid="uid://butda6k2tli3o" path="res://core/environment_config.gd" id="3_vg0pk"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_ruhh7"]
render_priority = 0
shader = ExtResource("1_glk67")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_r4tfj"]
transparency = 2
alpha_scissor_threshold = 0.0
alpha_antialiasing_mode = 0
disable_ambient_light = true
albedo_color = Color(0.44410604, 0.32877246, 0.26597014, 0.7541567)
billboard_mode = 3
particles_anim_h_frames = 1
particles_anim_v_frames = 1
particles_anim_loop = false
[sub_resource type="ShaderMaterial" id="ShaderMaterial_b5atu"]
render_priority = 0
shader = ExtResource("2_jx3gj")
shader_parameter/use_red_as_alpha = true
shader_parameter/fog_color = Color(0.8, 0.85, 0.9, 0.5)
shader_parameter/fog_density = 0.25
shader_parameter/scroll_speed = Vector2(0.05, 0.01)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/edge_softness_y = 0.2
shader_parameter/edge_softness_x = 0.1
shader_parameter/night_intensity = 0.7953524793650795
shader_parameter/sun_color = Color(0.2841828, 0.2023238, 0.27953526, 1)
[resource]
script = ExtResource("3_vg0pk")
morning_color = Color(0.93333334, 0.78039217, 0.6039216, 1)
afternoon_color = Color(0.9490196, 0.62352943, 0.38039216, 1)
night_color = Color(0.18431373, 0.18431373, 0.4862745, 1)
sun_rotation_morning = Vector3(-50, -90, 0)
sun_rotation_afternoon = Vector3(-120, -90, 0)
sun_rotation_night = Vector3(-130, -90, 0)
night_light_energy = 1.0
exposure_morning = 0.8
exposure_afternoon = 0.7
exposure_night = 0.7
rain_exposure_morning = 0.3
rain_exposure_afternoon = 0.4
rain_exposure_night = 1.8
storm_exposure_night = 1.8
sky_top_morning = Color(0.3176695, 0.43165123, 0.8895605, 1)
sky_top_afternoon = Color(0.42314696, 0.32907307, 0.74664044, 1)
sky_top_night = Color(0.20675227, 0.20655477, 0.4437065, 1)
sky_horizon_afternoon = Color(0.96335155, 0.3563425, 0.1952039, 1)
sky_horizon_night = Color(0.13534775, 0.09013713, 0.2303626, 1)
grad_top_morning = Color(0.7921569, 0.8784314, 0.95686275, 1)
grad_top_afternoon = Color(0.8627451, 0.24313726, 0.5411765, 1)
grad_top_night = Color(0.16470589, 0.16470589, 0.26666668, 1)
grad_bot_morning = Color(0.64469576, 0.7045768, 0.9350398, 1)
grad_bot_afternoon = Color(0.2509804, 0.019607844, 0.043137256, 1)
grad_intensity_morning = 0.05
grad_intensity_afternoon = 0.1
grad_intensity_night = 0.5
fog_color_morning = Color(0.7490196, 0.8509804, 0.9490196, 1)
fog_color_afternoon = Color(0.9823975, 0.8034449, 0.8778439, 1)
fog_color_night = Color(0.18375358, 0.16627002, 0.3588226, 1)
fog_density_morning = 0.01
fog_density_afternoon = 0.01
fog_density_night = 0.03
glow_morning = 0.8
glow_afternoon = 1.3
glow_night = 0.8
material_fog = SubResource("ShaderMaterial_b5atu")
material_drops = SubResource("StandardMaterial3D_r4tfj")
material_clouds = SubResource("ShaderMaterial_ruhh7")
lightning_color = Color(1, 0.9843137, 0.4627451, 1)
lightning_min = 2
lightning_max = 4
lightning_scale_min = 2.0
lightning_scale_max = 5.0
godray_max_rain = 30
godray_spawn_radius = 100.0
godray_spawn_offset = Vector3(20, 80, 20)
godray_rotation_degrees = Vector3(50, 30, 0)
godray_scale = Vector3(2, 25, 50)
snow_amount = 2000.0
wind_amount = 50
cloud_speed = 0.01
fireflies_amount = 550
fireflies_spawn_ray = 60.0
water_color_morning = Color(0.33333334, 0.654902, 0.5294118, 1)
water_color_afternoon = Color(0.5803922, 0.5137255, 0.2901961, 1)
water_color_night = Color(0.48235294, 0.45490196, 0.69411767, 1)
metadata/_custom_type_script = "uid://butda6k2tli3o"

View File

@@ -0,0 +1,143 @@
shader_type spatial;
render_mode specular_disabled, cull_disabled, blend_mix;
// --- GLOBAL UNIFORMS ---
global uniform float global_wind_scale;
global uniform float global_wind_speed;
global uniform float global_wind_strength;
global uniform vec2 global_wind_direction;
// --- PARAMETRI DELLA NUVOLA ---
uniform bool billboard_enabled = true;
uniform bool wind_enabled = true;
uniform sampler2D texture_nuvola : source_color, filter_linear_mipmap, repeat_disable;
uniform float nuvola_scale = 1.0;
uniform float rotation_degrees = 0.0;
uniform vec2 texture_offset = vec2(0.0, 0.0);
uniform float opacity : hint_range(0.0, 1.0) = 1.0;
// --- CONTROLLI PER MORDERE E SFOCARE I BORDI ---
group_uniforms Effetti_Bordo_Nuvola;
uniform float edge_erosion : hint_range(0.0, 1.0) = 0.25;
uniform float blur_intensity : hint_range(0.0, 1.0) = 0.2;
uniform float edge_softness : hint_range(0.01, 1.0) = 0.15;
// --- GRADIENTE LOCALE FRASTAGLIATO ---
group_uniforms Gradiente_Ghibli;
uniform vec4 colore_alto_luce : source_color = vec4(1.0, 0.9, 0.75, 1.0);
uniform vec4 colore_basso_ombra : source_color = vec4(0.4, 0.35, 0.5, 1.0);
uniform float limite_inferiore = -0.5;
uniform float limite_superiore = 0.5;
uniform float intensita_gradiente : hint_range(0.0, 1.0) = 0.6;
uniform float frastagliatura_bordo : hint_range(0.0, 2.0) = 0.4;
uniform float frequenza_frastagliatura : hint_range(0.1, 30.0) = 8.0;
uniform float rotazione_gradiente_z : hint_range(-180.0, 180.0) = 0.0;
// --- INTERAZIONE LUCE ENV ---
group_uniforms Interazione_Luce_Ambiente;
uniform float volume_bulge : hint_range(0.1, 4.0) = 1.5;
uniform float micro_bumpiness : hint_range(0.0, 1.0) = 0.25;
uniform float light_steps : hint_range(1.0, 10.0) = 3.0;
uniform float shadow_wrap : hint_range(0.0, 1.0) = 0.5;
uniform float cast_shadow_strength : hint_range(0.0, 1.0) = 0.5;
varying vec3 v_world_pos;
varying vec3 v_local_pos_ruotata;
void vertex() {
vec3 instance_pos = MODEL_MATRIX[3].xyz;
v_world_pos = instance_pos;
float total_angle = radians(rotation_degrees);
if (wind_enabled) {
float time = TIME * global_wind_speed;
float sway = sin(time + (instance_pos.x * 0.1) + (instance_pos.z * 0.1));
total_angle += (sway * global_wind_strength * 0.5);
}
vec3 v_local = VERTEX;
float rad_z = radians(rotazione_gradiente_z);
float cz = cos(rad_z), sz = sin(rad_z);
v_local_pos_ruotata = vec3(v_local.x * cz - v_local.y * sz, v_local.x * sz + v_local.y * cz, v_local.z);
if (billboard_enabled) {
vec3 view_pos_origin = (VIEW_MATRIX * vec4(instance_pos, 1.0)).xyz;
vec2 offset = (UV - 0.5) * nuvola_scale;
float c = cos(total_angle);
float s = sin(total_angle);
vec2 rotated_offset = vec2(offset.x * c - offset.y * s, offset.x * s + offset.y * c);
MODELVIEW_MATRIX = mat4(1.0);
MODELVIEW_MATRIX[3].xyz = view_pos_origin + vec3(rotated_offset.x, rotated_offset.y, 0.0);
VERTEX = vec3(0.0);
} else {
float c = cos(total_angle);
float s = sin(total_angle);
vec2 local_v = (VERTEX.xy) * nuvola_scale;
VERTEX.x = local_v.x * c - local_v.y * s;
VERTEX.y = local_v.x * s + local_v.y * c;
}
}
void fragment() {
// FIX: Corretta la dichiarazione pulita delle UV modificate dall'offset
vec2 uv = UV + texture_offset;
// 1. APPLICAZIONE DEL BLUR MULTI-CAMPIONAMENTO
float b_offset = blur_intensity * 0.02;
vec4 tex = texture(texture_nuvola, uv) * 0.4; // Campione centrale
tex += texture(texture_nuvola, uv + vec2(b_offset, b_offset)) * 0.15;
tex += texture(texture_nuvola, uv + vec2(-b_offset, -b_offset)) * 0.15;
tex += texture(texture_nuvola, uv + vec2(-b_offset, b_offset)) * 0.15;
tex += texture(texture_nuvola, uv + vec2(b_offset, -b_offset)) * 0.15;
// Generazione del rumore procedurale
float freq = frequenza_frastagliatura;
float noise = sin(v_local_pos_ruotata.x * freq) * cos(uv.y * freq);
noise += sin(uv.x * freq * 2.15) * 0.5;
float noise_norm = (noise + 1.5) / 3.0;
// 2. LOGICA DI EROSIONE DEL BORDO
float alpha_erosa = tex.a - (noise_norm * edge_erosion);
float alpha_finale = smoothstep(0.2 - edge_softness, 0.2 + edge_softness, alpha_erosa);
if (alpha_finale < 0.001) {
discard;
}
// 3. APPLICAZIONE GRADIENTE LOCALE
float y_frastagliata = v_local_pos_ruotata.y + (noise * frastagliatura_bordo);
float grad_factor = smoothstep(limite_inferiore, limite_superiore, y_frastagliata);
vec3 colore_gradiente = mix(colore_basso_ombra.rgb, colore_alto_luce.rgb, grad_factor);
ALBEDO = mix(tex.rgb, colore_gradiente, intensita_gradiente);
ALPHA = alpha_finale * opacity;
// GENERAZIONE NORMALE SFERICA VIRTUALE
vec2 normal_uv = uv - vec2(0.5);
vec3 fake_normal = vec3(
normal_uv.x * volume_bulge + (noise * micro_bumpiness),
normal_uv.y * volume_bulge + (noise * micro_bumpiness),
sqrt(max(0.0, 1.0 - dot(normal_uv, normal_uv)))
);
NORMAL = normalize(fake_normal);
}
void light() {
float n_dot_l = dot(NORMAL, LIGHT);
float light_wrap = smoothstep(0.0, 1.0, (n_dot_l + shadow_wrap) / (1.0 + shadow_wrap));
float raw_step = light_wrap * light_steps;
float lower_step = floor(raw_step);
float fract_step = fract(raw_step);
float soft_lerp = smoothstep(0.35, 0.65, fract_step);
float stepped_intensity = (lower_step + soft_lerp) / light_steps;
float shadow_factor = mix(1.0 - cast_shadow_strength, 1.0, ATTENUATION);
float cutoff_mask = smoothstep(0.0, 0.05, ATTENUATION);
vec3 env_sun_light = LIGHT_COLOR * stepped_intensity * shadow_factor * cutoff_mask;
DIFFUSE_LIGHT += ALBEDO * env_sun_light;
}

View File

@@ -0,0 +1 @@
uid://drrww3ypdw1hi

94
tgcc/map/main.tres Normal file
View File

@@ -0,0 +1,94 @@
[gd_resource type="Resource" script_class="EnvironmentConfig" format=3 uid="uid://cq627dtyhaew6"]
[ext_resource type="Shader" uid="uid://7vwkfffa5vao" path="res://core/daynight/clouds_shadow.gdshader" id="1_snwbd"]
[ext_resource type="Shader" uid="uid://cq4vlcj8cuvge" path="res://core/daynight/fog.gdshader" id="2_mriqi"]
[ext_resource type="Script" uid="uid://butda6k2tli3o" path="res://core/environment_config.gd" id="3_5pgsq"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_ruhh7"]
render_priority = 0
shader = ExtResource("1_snwbd")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_r4tfj"]
transparency = 2
alpha_scissor_threshold = 0.0
alpha_antialiasing_mode = 0
disable_ambient_light = true
albedo_color = Color(0.44410604, 0.32877246, 0.26597014, 0.7541567)
billboard_mode = 3
particles_anim_h_frames = 1
particles_anim_v_frames = 1
particles_anim_loop = false
[sub_resource type="ShaderMaterial" id="ShaderMaterial_b5atu"]
render_priority = 0
shader = ExtResource("2_mriqi")
shader_parameter/use_red_as_alpha = true
shader_parameter/fog_color = Color(0.8, 0.85, 0.9, 0.5)
shader_parameter/fog_density = 0.25
shader_parameter/scroll_speed = Vector2(0.05, 0.01)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/edge_softness_y = 0.2
shader_parameter/edge_softness_x = 0.1
shader_parameter/night_intensity = 0.7953524793650795
shader_parameter/sun_color = Color(0.2841828, 0.2023238, 0.27953526, 1)
[resource]
script = ExtResource("3_5pgsq")
morning_color = Color(0.93333334, 0.78039217, 0.6039216, 1)
afternoon_color = Color(0.9490196, 0.62352943, 0.38039216, 1)
night_color = Color(0.18431373, 0.18431373, 0.4862745, 1)
sun_rotation_morning = Vector3(-50, -90, 0)
sun_rotation_afternoon = Vector3(-120, -90, 0)
sun_rotation_night = Vector3(-130, -90, 0)
night_light_energy = 1.0
exposure_morning = 0.8
exposure_afternoon = 0.7
exposure_night = 0.7
rain_exposure_morning = 0.3
rain_exposure_afternoon = 0.4
rain_exposure_night = 1.8
storm_exposure_night = 1.8
sky_top_morning = Color(0.3176695, 0.43165123, 0.8895605, 1)
sky_top_afternoon = Color(0.42314696, 0.32907307, 0.74664044, 1)
sky_top_night = Color(0.20675227, 0.20655477, 0.4437065, 1)
sky_horizon_afternoon = Color(0.96335155, 0.3563425, 0.1952039, 1)
sky_horizon_night = Color(0.13534775, 0.09013713, 0.2303626, 1)
grad_top_morning = Color(0.7921569, 0.8784314, 0.95686275, 1)
grad_top_afternoon = Color(0.8627451, 0.24313726, 0.5411765, 1)
grad_top_night = Color(0.16470589, 0.16470589, 0.26666668, 1)
grad_bot_morning = Color(0.64469576, 0.7045768, 0.9350398, 1)
grad_bot_afternoon = Color(0.2509804, 0.019607844, 0.043137256, 1)
grad_intensity_morning = 0.05
grad_intensity_afternoon = 0.1
grad_intensity_night = 0.5
fog_color_morning = Color(0.7490196, 0.8509804, 0.9490196, 1)
fog_color_afternoon = Color(0.9823975, 0.8034449, 0.8778439, 1)
fog_color_night = Color(0.18375358, 0.16627002, 0.3588226, 1)
fog_density_morning = 0.01
fog_density_afternoon = 0.01
fog_density_night = 0.03
glow_morning = 0.4
glow_night = 0.8
enable_fog = true
material_fog = SubResource("ShaderMaterial_b5atu")
material_drops = SubResource("StandardMaterial3D_r4tfj")
material_clouds = SubResource("ShaderMaterial_ruhh7")
lightning_color = Color(1, 0.9843137, 0.4627451, 1)
lightning_min = 2
lightning_max = 4
lightning_scale_min = 2.0
lightning_scale_max = 5.0
godray_max_rain = 30
godray_spawn_radius = 100.0
godray_spawn_offset = Vector3(20, 80, 20)
godray_rotation_degrees = Vector3(50, 30, 0)
godray_scale = Vector3(2, 25, 50)
snow_amount = 2000.0
wind_amount = 50
cloud_speed = 0.01
fireflies_amount = 550
fireflies_spawn_ray = 60.0
water_color_morning = Color(0.33333334, 0.654902, 0.5294118, 1)
water_color_afternoon = Color(0.5803922, 0.5137255, 0.2901961, 1)
water_color_night = Color(0.48235294, 0.45490196, 0.69411767, 1)
metadata/_custom_type_script = "uid://butda6k2tli3o"

View File

@@ -3,40 +3,8 @@
[ext_resource type="PackedScene" uid="uid://bqxpqhla2kogq" path="res://tgcc/chunk/railway/scene/chunk_railway_straight.tscn" id="1_y7bw6"] [ext_resource type="PackedScene" uid="uid://bqxpqhla2kogq" path="res://tgcc/chunk/railway/scene/chunk_railway_straight.tscn" id="1_y7bw6"]
[ext_resource type="PackedScene" uid="uid://f53hfrjaxkwa" path="res://tgcc/chunk/railway/scene/chunk_railway_straight_bridge.tscn" id="4_00x5k"] [ext_resource type="PackedScene" uid="uid://f53hfrjaxkwa" path="res://tgcc/chunk/railway/scene/chunk_railway_straight_bridge.tscn" id="4_00x5k"]
[ext_resource type="PackedScene" uid="uid://d3pcshw2bioic" path="res://tgcc/chunk/railway/scene/chunk_railway_station_oneside.tscn" id="5_p7hrm"] [ext_resource type="PackedScene" uid="uid://d3pcshw2bioic" path="res://tgcc/chunk/railway/scene/chunk_railway_station_oneside.tscn" id="5_p7hrm"]
[ext_resource type="Shader" uid="uid://8l8glwvvs7fb" path="res://core/daynight/grass_leaves.gdshader" id="6_k3d2y"]
[ext_resource type="Texture2D" uid="uid://ct606pxejnynh" path="res://tgcc/chunk/material/decal/Fuji.png" id="7_o2asj"]
[ext_resource type="Texture2D" uid="uid://c2d0pws3cjs0u" path="res://tgcc/chunk/prop/grass/grass_colornoise.tres" id="8_00x5k"]
[ext_resource type="PackedScene" uid="uid://cqevecsd1cm1v" path="res://tgcc/chunk/railway/scene/chunk_railway_straight_3.tscn" id="8_1hpm5"] [ext_resource type="PackedScene" uid="uid://cqevecsd1cm1v" path="res://tgcc/chunk/railway/scene/chunk_railway_straight_3.tscn" id="8_1hpm5"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_p7hrm"]
render_priority = 0
shader = ExtResource("6_k3d2y")
shader_parameter/billboard_enabled = false
shader_parameter/wind_enabled = false
shader_parameter/base_color = Color(0.22601125, 0.24932194, 0.261108, 1)
shader_parameter/alpha_texture = ExtResource("7_o2asj")
shader_parameter/leaves_scale = 0.65
shader_parameter/rotation_degrees = 180.0
shader_parameter/texture_offset = Vector2(0, 0)
shader_parameter/opacity = 1.0
shader_parameter/color_variance_noise = ExtResource("8_00x5k")
shader_parameter/variance_scale = 0.1
shader_parameter/variance_color = Color(0.09803922, 0.18039216, 0.05490196, 1)
shader_parameter/variance_intensity = 0.90000004275
shader_parameter/snow_color = Color(0.85, 0.9, 0.95, 1)
shader_parameter/snow_visibility = 1.0
shader_parameter/snow_coverage = 0.35
shader_parameter/height_min = 0.0
shader_parameter/height_max = 5.0
shader_parameter/shadow_intensity = 0.610000028975
shader_parameter/highlight_intensity = 0.0
shader_parameter/light_steps = 2.150000054625
shader_parameter/random_mix = 0.0
shader_parameter/cast_shadow_strength = 0.6
shader_parameter/wetness_darkening = 0.25
[sub_resource type="PlaneMesh" id="PlaneMesh_chdvr"]
[node name="map_menu" type="Node3D" unique_id=1895741703] [node name="map_menu" type="Node3D" unique_id=1895741703]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 60.363808, 0, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 60.363808, 0, 0)
@@ -54,18 +22,3 @@ transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, -60,
[node name="chunk_railway_straight_3" parent="." unique_id=1086786013 instance=ExtResource("8_1hpm5")] [node name="chunk_railway_straight_3" parent="." unique_id=1086786013 instance=ExtResource("8_1hpm5")]
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, -80, 0, 0) transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, -80, 0, 0)
[node name="MeshInstance3D" type="MeshInstance3D" parent="." unique_id=1439967703]
transform = Transform3D(-190.00002, 3.8213708e-13, -8.742279e-06, 1.661033e-05, 4.371139e-06, -100.000015, 0, -100, -4.3711393e-06, -60, 96, 270)
material_override = SubResource("ShaderMaterial_p7hrm")
mesh = SubResource("PlaneMesh_chdvr")
[node name="MeshInstance3D2" type="MeshInstance3D" parent="." unique_id=732906131]
transform = Transform3D(-65.81793, -50, -3.9026418e-06, 6.6441316e-06, 4.3711393e-06, -40, 38, -86.60254, 2.3424877e-07, 30, 34, 220)
material_override = SubResource("ShaderMaterial_p7hrm")
mesh = SubResource("PlaneMesh_chdvr")
[node name="MeshInstance3D3" type="MeshInstance3D" parent="." unique_id=137314855]
transform = Transform3D(-65.81793, 50.000004, -2.154186e-06, 6.6441316e-06, 4.3711393e-06, -40, -38.000008, -86.60254, -3.2626626e-06, -172, 34, 220)
material_override = SubResource("ShaderMaterial_p7hrm")
mesh = SubResource("PlaneMesh_chdvr")