river water shader

This commit is contained in:
Matteo Sonaglioni
2026-05-05 18:45:16 +02:00
parent 977e8012aa
commit 9827b98b3e
11 changed files with 339 additions and 77 deletions

View File

@@ -0,0 +1,212 @@
#define USE_CAUSTICS 1
#define USE_REFRACTION 1
#define USE_DISPLACEMENT 1
#define USE_STYLIZED_LIGHTING 0
#define USE_UNSHADED 0
shader_type spatial;
#if USE_UNSHADED
render_mode unshaded, depth_draw_never;
#else
render_mode depth_draw_never;
#endif
uniform sampler2D DEPTH_TEXTURE: hint_depth_texture;
group_uniforms Color;
uniform vec4 surface_color : source_color = vec4(0.2,1.0,0.8,1.0);
uniform vec4 depth_color : source_color = vec4(0.08,0.2,0.4,1.0);
uniform vec4 foam_color : source_color = vec4(1.0);
uniform float depth_size = 12.0;
group_uniforms Roughness;
uniform float surface_roughness : hint_range(0.0, 1.0, 0.01) = 0.05;
uniform float foam_roughness : hint_range(0.0, 1.0, 0.01) = 0.05;
#if USE_CAUSTICS
group_uniforms Caustics;
uniform sampler2D caustics_texture;
uniform float caustics_strength = 2.0;
uniform vec2 caustics_scale = vec2(0.5);
#endif
group_uniforms Wave;
uniform sampler2D wave_texture;
#if !USE_UNSHADED
uniform sampler2D wave_normal_texture;
#endif
uniform float wave_softness : hint_range(0.0, 10.0, 0.1) = 3.0;
uniform vec2 wave_scale = vec2(0.2);
uniform vec2 wave_layer_scale = vec2(1.5);
uniform float wave_highlight : hint_range(0.0, 1.0, 0.05) = 0.5;
group_uniforms Wave.Motion;
uniform vec2 wave_velocity = vec2(0.02);
group_uniforms Foam;
uniform sampler2D foam_texture;
uniform float edge_foam_depth_size = 1.0;
uniform float wave_foam_amount : hint_range(0.0, 1.0, 0.01) = 0.8;
uniform float foam_start : hint_range(0.0, 1.0, 0.05) = 0.15;
uniform float foam_end : hint_range(0.0, 1.0, 0.05) = 0.3;
uniform float foam_exponent = 2.0;
#if USE_REFRACTION
group_uniforms Refraction;
uniform float refraction_amount = 0.5;
uniform float refraction_exponent = 0.5;
#endif
#if USE_DISPLACEMENT
group_uniforms Displacement;
uniform float displacement_amount = 0.3;
#endif
#if USE_STYLIZED_LIGHTING && !USE_UNSHADED
group_uniforms Lighting;
uniform float diffuse_steps = 12.0;
uniform float diffuse_smoothness : hint_range(0.0, 1.0, 0.01) = 0.2;
uniform float specular_steps = 12.0;
uniform float specular_smoothness : hint_range(0.0, 1.0, 0.01) = 0.2;
#endif
uniform sampler2D screen_texture : hint_screen_texture;
varying vec3 world_pos;
#if USE_CAUSTICS
vec3 sample_caustics(vec2 uv){
vec2 caustics_uv = uv * caustics_scale;
return vec3(
texture(caustics_texture, caustics_uv).r,
texture(caustics_texture, caustics_uv+vec2(0.02,0.02)).r,
texture(caustics_texture, caustics_uv+vec2(0.03,0.01)).r
);
}
#endif
vec4 sample_world_dpos(vec2 screen_uv, mat4 inv_proj_mat, mat4 inv_view_mat){
vec4 clip_pos = vec4(screen_uv * 2.0 - 1.0, texture(DEPTH_TEXTURE, screen_uv).r, 1.0);
vec4 view_pos = inv_proj_mat * clip_pos;
view_pos /= view_pos.w;
vec4 world_dpos = inv_view_mat * view_pos;
return world_dpos;
}
vec4 sample_wave(sampler2D tex, vec2 uv, vec2 velocity, float lod){
vec2 base_uv = uv * wave_scale;
vec2 wave_uv1 = (base_uv * wave_layer_scale) + (TIME * -velocity);
float wave1 = textureLod(tex, wave_uv1, lod).r;
vec2 wave_uv2 = base_uv + (TIME * velocity);
vec4 wave2 = textureLod(tex, wave_uv2 - (wave1 * 0.1), lod);
return wave2;
}
void vertex(){
world_pos = (MODEL_MATRIX * vec4(VERTEX, 1.0)).xyz;
#if USE_DISPLACEMENT
float wave = sample_wave(wave_texture, world_pos.xz, wave_velocity, wave_softness).r;
VERTEX.y += wave*displacement_amount;
#endif
}
void fragment() {
float wave = sample_wave(wave_texture, world_pos.xz, wave_velocity, wave_softness).r;
wave = smoothstep(0.0,1.0,wave);
vec2 screen_uv = SCREEN_UV;
// Refraction
#if USE_REFRACTION
screen_uv += ((pow(wave, refraction_exponent)*2.0 - 0.5) * 0.01 * refraction_amount);
vec4 world_dpos = sample_world_dpos(screen_uv, INV_PROJECTION_MATRIX, INV_VIEW_MATRIX);
float pre_depth = pow(clamp((world_dpos.y - world_pos.y + depth_size)/depth_size, 0.0, 1.0), 4.0);
screen_uv = mix(screen_uv, SCREEN_UV, pre_depth);
if(world_dpos.y - world_pos.y > 0.0){
screen_uv = SCREEN_UV;
}
#else
vec4 world_dpos = sample_world_dpos(screen_uv, INV_PROJECTION_MATRIX, INV_VIEW_MATRIX);
#endif
world_dpos = sample_world_dpos(screen_uv, INV_PROJECTION_MATRIX, INV_VIEW_MATRIX);
vec2 surface_uv = world_dpos.xz * 0.2;
float depth = pow(clamp((world_dpos.y - world_pos.y + depth_size)/depth_size, 0.0, 1.0), 4.0);
// Caustics
#if USE_CAUSTICS
vec3 caustics1 = sample_caustics(surface_uv + (TIME * -wave_velocity));
vec3 caustics2 = sample_caustics((surface_uv + (caustics1.r*0.05)) + (TIME * (wave_velocity*0.5)));
vec3 caustics = caustics2 * (1.0 - depth);
#endif
// Edge Foam
float edge_foam_depth = clamp((world_dpos.y - world_pos.y + edge_foam_depth_size)/edge_foam_depth_size, 0.0, 1.0);
// Wave Foam
float wave_foam = wave;
float foam = max(edge_foam_depth, wave_foam * wave_foam_amount);
float foam_shape = 1.0 - texture(foam_texture, world_pos.xz* 0.5).r;
foam = clamp((foam - foam_start) / (foam_end - foam_start), 0.0, 1.0);
foam = clamp((foam - foam_shape) / (1.0 - foam_shape), 0.0, 1.0);
foam = pow(foam, foam_exponent);
vec3 flat_color = mix(depth_color, surface_color, depth).rgb;
vec4 screen = texture(screen_texture, screen_uv);
vec3 color = screen.rgb;
#if USE_CAUSTICS
color += vec3(pow(caustics * caustics_strength, vec3(2.0)));
#endif
color = mix(flat_color, color, 0.4 * depth);
color = mix(color, surface_color.rgb, wave * wave_highlight);
color = mix(color, foam_color.rgb, foam);
#if !USE_UNSHADED
vec3 wave_normal_map = sample_wave(wave_normal_texture, world_pos.xz, wave_velocity, wave_softness).rgb;
NORMAL_MAP = wave_normal_map;
#endif
ROUGHNESS = mix(surface_roughness, foam_roughness, foam);
ALBEDO = color;
}
#if USE_STYLIZED_LIGHTING && !USE_UNSHADED
void light(){
float ndotl = dot(NORMAL, LIGHT) * ATTENUATION;
//ndotl = smoothstep(0.0,1.0-ROUGHNESS,ndotl);
float light = ndotl;
float light_mult = light * diffuse_steps;
float light_step_base = floor(light_mult);
float light_factor = light_mult - light_step_base;
light_factor = smoothstep(0.5 - diffuse_smoothness * 0.5, 0.5 + diffuse_smoothness * 0.5, light_factor);
light = (light_step_base + light_factor) / diffuse_steps;
DIFFUSE_LIGHT += (LIGHT_COLOR+ALBEDO) * light / PI;
float roughness = mix(0.01, 0.99, ROUGHNESS);
vec3 h = normalize(VIEW + LIGHT);
float ndoth = clamp(dot(NORMAL, h), 0.0, 1.0) * ATTENUATION;
float specular = clamp(pow(ndoth, 16.0/(roughness)), 0.1, 0.99);
specular = mix(pow(specular, 2.0-roughness),0.00,pow(roughness, 0.1));
float specular_mult = specular * specular_steps;
float specular_step_base = floor(specular_mult);
float specular_factor = specular_mult - specular_step_base;
specular_factor = smoothstep(0.5 - specular_smoothness * 0.5, 0.5 + specular_smoothness * 0.5, specular_factor);
specular = (specular_step_base + specular_factor) / specular_steps;
SPECULAR_LIGHT += (LIGHT_COLOR + ALBEDO) * specular;
}
#endif

View File

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

View File

@@ -0,0 +1,44 @@
[gd_resource type="ShaderMaterial" format=3 uid="uid://d37iugof887py"]
[ext_resource type="Shader" uid="uid://cb12c2j8rfu6a" path="res://core/daynight/water_river.gdshader" id="1_qxgaw"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_qxgaw"]
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_ix712"]
noise = SubResource("FastNoiseLite_qxgaw")
seamless = true
[sub_resource type="FastNoiseLite" id="FastNoiseLite_ssur3"]
frequency = 0.0228
fractal_type = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_qgvya"]
noise = SubResource("FastNoiseLite_ssur3")
seamless = true
[resource]
render_priority = 1
shader = ExtResource("1_qxgaw")
shader_parameter/surface_color = Color(0.2, 1, 0.8, 1)
shader_parameter/depth_color = Color(0.18124294, 0.496769, 0.33694285, 1)
shader_parameter/foam_color = Color(0.6663343, 0.7351854, 0.66567737, 1)
shader_parameter/depth_size = 12.0
shader_parameter/surface_roughness = 0.05
shader_parameter/foam_roughness = 0.05
shader_parameter/caustics_strength = 2.0
shader_parameter/caustics_scale = Vector2(0.5, 0.5)
shader_parameter/wave_texture = SubResource("NoiseTexture2D_qgvya")
shader_parameter/wave_softness = 2.80000004172336
shader_parameter/wave_scale = Vector2(0.2, 0.2)
shader_parameter/wave_layer_scale = Vector2(1.5, 1.5)
shader_parameter/wave_highlight = 1.0
shader_parameter/wave_velocity = Vector2(0.01, 0.15)
shader_parameter/foam_texture = SubResource("NoiseTexture2D_ix712")
shader_parameter/edge_foam_depth_size = 1.0
shader_parameter/wave_foam_amount = 0.3499999921768
shader_parameter/foam_start = 0.15000000223518
shader_parameter/foam_end = 0.35000000521542
shader_parameter/foam_exponent = 2.0
shader_parameter/refraction_amount = 0.5
shader_parameter/refraction_exponent = 0.5
shader_parameter/displacement_amount = 0.0

View File

@@ -10,7 +10,7 @@
[ext_resource type="Material" uid="uid://cn20mp8ep3yxu" path="res://tgcc/chunk/material/wires.tres" id="5_1vb6v"] [ext_resource type="Material" uid="uid://cn20mp8ep3yxu" path="res://tgcc/chunk/material/wires.tres" id="5_1vb6v"]
[ext_resource type="Material" uid="uid://0x17mj2v807r" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds2.tres" id="5_8e6cq"] [ext_resource type="Material" uid="uid://0x17mj2v807r" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds2.tres" id="5_8e6cq"]
[ext_resource type="Material" uid="uid://o31kp0jm07q3" path="res://tgcc/chunk/material/rocks.tres" id="6_1vb6v"] [ext_resource type="Material" uid="uid://o31kp0jm07q3" path="res://tgcc/chunk/material/rocks.tres" id="6_1vb6v"]
[ext_resource type="Material" uid="uid://ce0bdk3mx2xao" path="res://tgcc/chunk/material/water_chunk.tres" id="7_4wpy1"] [ext_resource type="Material" uid="uid://d37iugof887py" path="res://tgcc/chunk/material/water_river.tres" id="8_3rloo"]
[ext_resource type="Material" uid="uid://jygb1hcokks5" path="res://tgcc/chunk/prop/grass/grass_bank.tres" id="8_vtlx3"] [ext_resource type="Material" uid="uid://jygb1hcokks5" path="res://tgcc/chunk/prop/grass/grass_bank.tres" id="8_vtlx3"]
[sub_resource type="PlaneMesh" id="PlaneMesh_1vb6v"] [sub_resource type="PlaneMesh" id="PlaneMesh_1vb6v"]
@@ -66,7 +66,7 @@ surface_material_override/1 = ExtResource("5_1vb6v")
surface_material_override/0 = ExtResource("6_1vb6v") surface_material_override/0 = ExtResource("6_1vb6v")
[node name="Water_F_008" parent="." index="5" unique_id=1612455466] [node name="Water_F_008" parent="." index="5" unique_id=1612455466]
surface_material_override/0 = ExtResource("7_4wpy1") surface_material_override/0 = ExtResource("8_3rloo")
[node name="grass" type="Node3D" parent="." index="6" unique_id=50370298 groups=["weather_vegetables_node", "wind_node"]] [node name="grass" type="Node3D" parent="." index="6" unique_id=50370298 groups=["weather_vegetables_node", "wind_node"]]

View File

@@ -7,9 +7,9 @@
[ext_resource type="Material" uid="uid://4xhpd6lust7w" path="res://tgcc/chunk/material/path_chunk.tres" id="4_amhor"] [ext_resource type="Material" uid="uid://4xhpd6lust7w" path="res://tgcc/chunk/material/path_chunk.tres" id="4_amhor"]
[ext_resource type="Material" uid="uid://jygb1hcokks5" path="res://tgcc/chunk/prop/grass/grass_bank.tres" id="4_nbenq"] [ext_resource type="Material" uid="uid://jygb1hcokks5" path="res://tgcc/chunk/prop/grass/grass_bank.tres" id="4_nbenq"]
[ext_resource type="Material" uid="uid://fnjxocmx16b7" path="res://tgcc/chunk/prop/grass/grass_chunk.tres" id="5_062h7"] [ext_resource type="Material" uid="uid://fnjxocmx16b7" path="res://tgcc/chunk/prop/grass/grass_chunk.tres" id="5_062h7"]
[ext_resource type="Material" uid="uid://ce0bdk3mx2xao" path="res://tgcc/chunk/material/water_chunk.tres" id="5_nbenq"]
[ext_resource type="Material" uid="uid://bjrb33qwp1p43" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds.tres" id="6_50ej2"] [ext_resource type="Material" uid="uid://bjrb33qwp1p43" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds.tres" id="6_50ej2"]
[ext_resource type="Material" uid="uid://dbmyfi5t0yfy" path="res://tgcc/chunk/prop/house/house_emissiv.tres" id="6_062h7"] [ext_resource type="Material" uid="uid://dbmyfi5t0yfy" path="res://tgcc/chunk/prop/house/house_emissiv.tres" id="6_062h7"]
[ext_resource type="Material" uid="uid://d37iugof887py" path="res://tgcc/chunk/material/water_river.tres" id="6_es1d0"]
[ext_resource type="Material" uid="uid://0x17mj2v807r" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds2.tres" id="7_0snf2"] [ext_resource type="Material" uid="uid://0x17mj2v807r" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds2.tres" id="7_0snf2"]
[ext_resource type="Shader" uid="uid://d0ch5ofrgf7y6" path="res://core/daynight/trunk_shader.gdshader" id="7_50ej2"] [ext_resource type="Shader" uid="uid://d0ch5ofrgf7y6" path="res://core/daynight/trunk_shader.gdshader" id="7_50ej2"]
[ext_resource type="Material" uid="uid://buxlrrpn7rdgs" path="res://tgcc/chunk/material/wood.tres" id="8_0snf2"] [ext_resource type="Material" uid="uid://buxlrrpn7rdgs" path="res://tgcc/chunk/material/wood.tres" id="8_0snf2"]
@@ -105,31 +105,31 @@ west = true
river_north = true river_north = true
river_south = true river_south = true
[node name="Argini_F_003" parent="." index="0" unique_id=1175292801] [node name="Argini_F_003" parent="." index="0" unique_id=1943456620]
surface_material_override/0 = ExtResource("2_wqn5s") surface_material_override/0 = ExtResource("2_wqn5s")
[node name="Flower_021" parent="." index="1" unique_id=446320265] [node name="Flower_021" parent="." index="1" unique_id=1248562513]
visible = false visible = false
[node name="FlowerG_020" parent="." index="2" unique_id=2064549907] [node name="FlowerG_020" parent="." index="2" unique_id=522984193]
visible = false visible = false
[node name="MSH_Staccioanta_1_019" parent="." index="3" unique_id=337692191] [node name="MSH_Staccioanta_1_019" parent="." index="3" unique_id=712328040]
surface_material_override/0 = ExtResource("3_amhor") surface_material_override/0 = ExtResource("3_amhor")
[node name="Strada_011" parent="." index="4" unique_id=1430530551] [node name="Strada_011" parent="." index="4" unique_id=1636902357]
surface_material_override/0 = ExtResource("4_amhor") surface_material_override/0 = ExtResource("4_amhor")
[node name="Water_F_003" parent="." index="5" unique_id=365812789] [node name="Water_F_003" parent="." index="5" unique_id=1352549891]
surface_material_override/0 = ExtResource("5_nbenq") surface_material_override/0 = ExtResource("6_es1d0")
[node name="bridge" parent="." index="6" unique_id=155043516] [node name="bridge" parent="." index="6" unique_id=283522162]
surface_material_override/0 = ExtResource("6_062h7") surface_material_override/0 = ExtResource("6_062h7")
surface_material_override/1 = SubResource("ShaderMaterial_0snf2") surface_material_override/1 = SubResource("ShaderMaterial_0snf2")
surface_material_override/2 = ExtResource("8_0snf2") surface_material_override/2 = ExtResource("8_0snf2")
surface_material_override/3 = SubResource("ShaderMaterial_i6s7h") surface_material_override/3 = SubResource("ShaderMaterial_i6s7h")
[node name="grass" parent="." index="7" unique_id=1663404811] [node name="grass" parent="." index="7" unique_id=863206516]
surface_material_override/0 = ExtResource("2_wqn5s") surface_material_override/0 = ExtResource("2_wqn5s")
[node name="grass2" type="Node3D" parent="." index="8" unique_id=1023384553 groups=["weather_vegetables_node", "wind_node"]] [node name="grass2" type="Node3D" parent="." index="8" unique_id=1023384553 groups=["weather_vegetables_node", "wind_node"]]

View File

@@ -7,6 +7,7 @@
[ext_resource type="Material" uid="uid://ce0bdk3mx2xao" path="res://tgcc/chunk/material/water_chunk.tres" id="3_bmrw7"] [ext_resource type="Material" uid="uid://ce0bdk3mx2xao" path="res://tgcc/chunk/material/water_chunk.tres" id="3_bmrw7"]
[ext_resource type="Material" uid="uid://jygb1hcokks5" path="res://tgcc/chunk/prop/grass/grass_bank.tres" id="3_x8fyt"] [ext_resource type="Material" uid="uid://jygb1hcokks5" path="res://tgcc/chunk/prop/grass/grass_bank.tres" id="3_x8fyt"]
[ext_resource type="Material" uid="uid://bjrb33qwp1p43" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds.tres" id="4_bmrw7"] [ext_resource type="Material" uid="uid://bjrb33qwp1p43" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds.tres" id="4_bmrw7"]
[ext_resource type="Material" uid="uid://d37iugof887py" path="res://tgcc/chunk/material/water_river.tres" id="5_wcs53"]
[ext_resource type="Material" uid="uid://0x17mj2v807r" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds2.tres" id="5_y4odd"] [ext_resource type="Material" uid="uid://0x17mj2v807r" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds2.tres" id="5_y4odd"]
[sub_resource type="PlaneMesh" id="PlaneMesh_k0xin"] [sub_resource type="PlaneMesh" id="PlaneMesh_k0xin"]
@@ -50,20 +51,20 @@ script = ExtResource("2_bmrw7")
river_south = true river_south = true
river_west = true river_west = true
[node name="Argini_009" parent="." index="0" unique_id=373965021] [node name="Argini_009" parent="." index="0" unique_id=650454440]
surface_material_override/0 = ExtResource("2_x8fyt") surface_material_override/0 = ExtResource("2_x8fyt")
[node name="Argini_F_001" parent="." index="1" unique_id=1543471884] [node name="Argini_F_001" parent="." index="1" unique_id=1709224433]
surface_material_override/0 = ExtResource("2_x8fyt") surface_material_override/0 = ExtResource("2_x8fyt")
[node name="Chunk_017" parent="." index="2" unique_id=1639631482] [node name="Chunk_017" parent="." index="2" unique_id=1001158626]
surface_material_override/0 = ExtResource("2_x8fyt") surface_material_override/0 = ExtResource("2_x8fyt")
[node name="Water_010" parent="." index="3" unique_id=348287576] [node name="Water_010" parent="." index="3" unique_id=822678307]
surface_material_override/0 = ExtResource("3_bmrw7") surface_material_override/0 = ExtResource("3_bmrw7")
[node name="Water_F_001" parent="." index="4" unique_id=24270399] [node name="Water_F_001" parent="." index="4" unique_id=1952113981]
surface_material_override/0 = ExtResource("3_bmrw7") surface_material_override/0 = ExtResource("5_wcs53")
[node name="grass" type="Node3D" parent="." index="5" unique_id=91576374 groups=["weather_vegetables_node", "wind_node"]] [node name="grass" type="Node3D" parent="." index="5" unique_id=91576374 groups=["weather_vegetables_node", "wind_node"]]

View File

@@ -10,6 +10,7 @@
[ext_resource type="Material" uid="uid://bjrb33qwp1p43" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds.tres" id="5_w8tpk"] [ext_resource type="Material" uid="uid://bjrb33qwp1p43" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds.tres" id="5_w8tpk"]
[ext_resource type="Material" uid="uid://0x17mj2v807r" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds2.tres" id="6_i0i0i"] [ext_resource type="Material" uid="uid://0x17mj2v807r" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds2.tres" id="6_i0i0i"]
[ext_resource type="Material" uid="uid://ce0bdk3mx2xao" path="res://tgcc/chunk/material/water_chunk.tres" id="6_tf5mu"] [ext_resource type="Material" uid="uid://ce0bdk3mx2xao" path="res://tgcc/chunk/material/water_chunk.tres" id="6_tf5mu"]
[ext_resource type="Material" uid="uid://d37iugof887py" path="res://tgcc/chunk/material/water_river.tres" id="7_w3iym"]
[ext_resource type="PackedScene" uid="uid://c7hdw2g6sbygr" path="res://tgcc/chunk/prop/tree/bambù/bambù.tscn" id="11_tf5mu"] [ext_resource type="PackedScene" uid="uid://c7hdw2g6sbygr" path="res://tgcc/chunk/prop/tree/bambù/bambù.tscn" id="11_tf5mu"]
[sub_resource type="PlaneMesh" id="PlaneMesh_tf5mu"] [sub_resource type="PlaneMesh" id="PlaneMesh_tf5mu"]
@@ -52,26 +53,26 @@ size = Vector2(1, 1)
script = ExtResource("2_kvbtp") script = ExtResource("2_kvbtp")
river_north = true river_north = true
[node name="Argini_018" parent="." index="0" unique_id=103668679] [node name="Argini_018" parent="." index="0" unique_id=798153780]
surface_material_override/0 = ExtResource("3_4mfxv") surface_material_override/0 = ExtResource("3_4mfxv")
[node name="Argini_F_002" parent="." index="1" unique_id=515347137] [node name="Argini_F_002" parent="." index="1" unique_id=224286275]
surface_material_override/0 = ExtResource("3_4mfxv") surface_material_override/0 = ExtResource("3_4mfxv")
[node name="Cube_034" parent="." index="2" unique_id=1884200507] [node name="Cube_034" parent="." index="2" unique_id=763901855]
surface_material_override/0 = ExtResource("4_w8tpk") surface_material_override/0 = ExtResource("4_w8tpk")
[node name="Grass_020" parent="." index="3" unique_id=795966800] [node name="Grass_020" parent="." index="3" unique_id=1008856994]
surface_material_override/0 = ExtResource("3_4mfxv") surface_material_override/0 = ExtResource("3_4mfxv")
[node name="MSH_Staccioanta_1_021" parent="." index="4" unique_id=953303128] [node name="MSH_Staccioanta_1_021" parent="." index="4" unique_id=1790761410]
surface_material_override/0 = ExtResource("5_i0i0i") surface_material_override/0 = ExtResource("5_i0i0i")
[node name="Water_019" parent="." index="5" unique_id=819094104] [node name="Water_019" parent="." index="5" unique_id=1519616413]
surface_material_override/0 = ExtResource("6_tf5mu") surface_material_override/0 = ExtResource("6_tf5mu")
[node name="Water_F_002" parent="." index="6" unique_id=1201466504] [node name="Water_F_002" parent="." index="6" unique_id=903800211]
surface_material_override/0 = ExtResource("6_tf5mu") surface_material_override/0 = ExtResource("7_w3iym")
[node name="grass2" type="Node3D" parent="." index="7" unique_id=1169806788 groups=["weather_vegetables_node", "wind_node"]] [node name="grass2" type="Node3D" parent="." index="7" unique_id=1169806788 groups=["weather_vegetables_node", "wind_node"]]

View File

@@ -17,6 +17,7 @@
[ext_resource type="Material" uid="uid://baot4vy3fqrdw" path="res://tgcc/chunk/prop/flower/bush.tres" id="11_2l46r"] [ext_resource type="Material" uid="uid://baot4vy3fqrdw" path="res://tgcc/chunk/prop/flower/bush.tres" id="11_2l46r"]
[ext_resource type="Material" uid="uid://ce0bdk3mx2xao" path="res://tgcc/chunk/material/water_chunk.tres" id="11_3krle"] [ext_resource type="Material" uid="uid://ce0bdk3mx2xao" path="res://tgcc/chunk/material/water_chunk.tres" id="11_3krle"]
[ext_resource type="Material" uid="uid://f5uoreickew7" path="res://tgcc/chunk/prop/flower/flower.tres" id="12_0xjwt"] [ext_resource type="Material" uid="uid://f5uoreickew7" path="res://tgcc/chunk/prop/flower/flower.tres" id="12_0xjwt"]
[ext_resource type="Material" uid="uid://d37iugof887py" path="res://tgcc/chunk/material/water_river.tres" id="12_nfiu6"]
[sub_resource type="PlaneMesh" id="PlaneMesh_cnnpi"] [sub_resource type="PlaneMesh" id="PlaneMesh_cnnpi"]
size = Vector2(0.5, 0.5) size = Vector2(0.5, 0.5)
@@ -86,57 +87,57 @@ script = ExtResource("2_8ueaj")
west = true west = true
river_south = true river_south = true
[node name="Argini_013" parent="." index="0" unique_id=182908030] [node name="Argini_013" parent="." index="0" unique_id=1870487458]
surface_material_override/0 = ExtResource("3_oqr18") surface_material_override/0 = ExtResource("3_oqr18")
[node name="Argini_F_005" parent="." index="1" unique_id=86756380] [node name="Argini_F_005" parent="." index="1" unique_id=1126095130]
surface_material_override/0 = ExtResource("3_oqr18") surface_material_override/0 = ExtResource("3_oqr18")
[node name="Cavi_008" parent="." index="3" unique_id=1686049927] [node name="Cavi_008" parent="." index="3" unique_id=613985618]
surface_material_override/0 = ExtResource("4_h5fgh") surface_material_override/0 = ExtResource("4_h5fgh")
surface_material_override/1 = ExtResource("4_h5fgh") surface_material_override/1 = ExtResource("4_h5fgh")
[node name="Cortile_006" parent="." index="4" unique_id=967194955] [node name="Cortile_006" parent="." index="4" unique_id=1701095883]
surface_material_override/0 = ExtResource("5_5r0cx") surface_material_override/0 = ExtResource("5_5r0cx")
[node name="Cube_036" parent="." index="5" unique_id=1001447660] [node name="Cube_036" parent="." index="5" unique_id=672869904]
surface_material_override/0 = ExtResource("6_wdn0q") surface_material_override/0 = ExtResource("6_wdn0q")
[node name="Flower_012" parent="." index="6" unique_id=1767214109] [node name="Flower_012" parent="." index="6" unique_id=2051395944]
visible = false visible = false
[node name="FlowerG_011" parent="." index="7" unique_id=1579830786] [node name="FlowerG_011" parent="." index="7" unique_id=1394853760]
visible = false visible = false
[node name="Grass_016" parent="." index="8" unique_id=1247875526] [node name="Grass_016" parent="." index="8" unique_id=1019594918]
surface_material_override/0 = ExtResource("3_oqr18") surface_material_override/0 = ExtResource("3_oqr18")
[node name="House_M_3_001|Cube_212|Dupli|" parent="House_M_3_001" parent_id_path=PackedInt32Array(164742285) index="0" unique_id=476149365] [node name="House_M_3_001|Cube_212|Dupli|" parent="House_M_3_001" parent_id_path=PackedInt32Array(2053098324) index="0" unique_id=1484776379]
surface_material_override/0 = ExtResource("7_h5fgh") surface_material_override/0 = ExtResource("7_h5fgh")
surface_material_override/1 = ExtResource("8_5r0cx") surface_material_override/1 = ExtResource("8_5r0cx")
[node name="Lanterne_008" parent="." index="10" unique_id=1540978561] [node name="Lanterne_008" parent="." index="10" unique_id=2140482727]
surface_material_override/0 = ExtResource("8_5r0cx") surface_material_override/0 = ExtResource("8_5r0cx")
surface_material_override/1 = ExtResource("7_h5fgh") surface_material_override/1 = ExtResource("7_h5fgh")
[node name="MSH_Staccioanta_1_013" parent="." index="11" unique_id=169367927] [node name="MSH_Staccioanta_1_013" parent="." index="11" unique_id=1624527004]
surface_material_override/0 = ExtResource("9_kfusd") surface_material_override/0 = ExtResource("9_kfusd")
[node name="PaliLuci_006" parent="." index="12" unique_id=67521119] [node name="PaliLuci_006" parent="." index="12" unique_id=604291129]
surface_material_override/0 = ExtResource("10_3krle") surface_material_override/0 = ExtResource("10_3krle")
surface_material_override/1 = ExtResource("10_3krle") surface_material_override/1 = ExtResource("10_3krle")
[node name="Panchina_001" parent="." index="13" unique_id=1583765035] [node name="Panchina_001" parent="." index="13" unique_id=1738965733]
surface_material_override/0 = ExtResource("10_3krle") surface_material_override/0 = ExtResource("10_3krle")
[node name="Strada_012" parent="." index="14" unique_id=816505107] [node name="Strada_012" parent="." index="14" unique_id=809715190]
surface_material_override/0 = ExtResource("5_5r0cx") surface_material_override/0 = ExtResource("5_5r0cx")
[node name="Water_014" parent="." index="15" unique_id=1927503386] [node name="Water_014" parent="." index="15" unique_id=1068824614]
surface_material_override/0 = ExtResource("11_3krle") surface_material_override/0 = ExtResource("11_3krle")
[node name="Water_F_005" parent="." index="16" unique_id=679348897] [node name="Water_F_005" parent="." index="16" unique_id=607663394]
surface_material_override/0 = ExtResource("11_3krle") surface_material_override/0 = ExtResource("12_nfiu6")
[node name="grass" type="Node3D" parent="." index="17" unique_id=64319559 groups=["weather_vegetables_node", "wind_node"]] [node name="grass" type="Node3D" parent="." index="17" unique_id=64319559 groups=["weather_vegetables_node", "wind_node"]]

View File

@@ -17,7 +17,7 @@
[ext_resource type="Material" uid="uid://f5uoreickew7" path="res://tgcc/chunk/prop/flower/flower.tres" id="8_homdn"] [ext_resource type="Material" uid="uid://f5uoreickew7" path="res://tgcc/chunk/prop/flower/flower.tres" id="8_homdn"]
[ext_resource type="PackedScene" uid="uid://c7hdw2g6sbygr" path="res://tgcc/chunk/prop/tree/bambù/bambù.tscn" id="9_aimrl"] [ext_resource type="PackedScene" uid="uid://c7hdw2g6sbygr" path="res://tgcc/chunk/prop/tree/bambù/bambù.tscn" id="9_aimrl"]
[ext_resource type="Material" uid="uid://buxlrrpn7rdgs" path="res://tgcc/chunk/material/wood.tres" id="9_tbfcp"] [ext_resource type="Material" uid="uid://buxlrrpn7rdgs" path="res://tgcc/chunk/material/wood.tres" id="9_tbfcp"]
[ext_resource type="Material" uid="uid://ce0bdk3mx2xao" path="res://tgcc/chunk/material/water_chunk.tres" id="10_tbfcp"] [ext_resource type="Material" uid="uid://d37iugof887py" path="res://tgcc/chunk/material/water_river.tres" id="11_sc7dg"]
[sub_resource type="PlaneMesh" id="PlaneMesh_tbfcp"] [sub_resource type="PlaneMesh" id="PlaneMesh_tbfcp"]
size = Vector2(0.5, 0.5) size = Vector2(0.5, 0.5)
@@ -72,51 +72,51 @@ script = ExtResource("2_oo15q")
west = true west = true
river_est = true river_est = true
[node name="Argini_F_006" parent="." index="0" unique_id=1126743135] [node name="Argini_F_006" parent="." index="0" unique_id=2052595324]
surface_material_override/0 = ExtResource("2_07njl") surface_material_override/0 = ExtResource("2_07njl")
[node name="Cavi_011" parent="." index="2" unique_id=1763299309] [node name="Cavi_011" parent="." index="2" unique_id=1189119357]
surface_material_override/0 = ExtResource("3_6i64l") surface_material_override/0 = ExtResource("3_6i64l")
surface_material_override/1 = ExtResource("3_6i64l") surface_material_override/1 = ExtResource("3_6i64l")
[node name="Cortile_008" parent="." index="3" unique_id=1956931473] [node name="Cortile_008" parent="." index="3" unique_id=529393833]
surface_material_override/0 = ExtResource("4_chuhj") surface_material_override/0 = ExtResource("4_chuhj")
[node name="Cube_037" parent="." index="4" unique_id=1611037455] [node name="Cube_037" parent="." index="4" unique_id=625928553]
surface_material_override/0 = ExtResource("5_nh4uy") surface_material_override/0 = ExtResource("5_nh4uy")
[node name="Flower_023" parent="." index="5" unique_id=1487817171] [node name="Flower_023" parent="." index="5" unique_id=1437698922]
visible = false visible = false
[node name="FlowerG_021" parent="." index="6" unique_id=1504655405] [node name="FlowerG_021" parent="." index="6" unique_id=158388662]
visible = false visible = false
[node name="Grass_021" parent="." index="7" unique_id=2015786655] [node name="Grass_021" parent="." index="7" unique_id=1075425630]
surface_material_override/0 = ExtResource("2_07njl") surface_material_override/0 = ExtResource("2_07njl")
[node name="House_M_3_002|Cube_212|Dupli|" parent="House_M_3_002" parent_id_path=PackedInt32Array(1702626747) index="0" unique_id=1161914945] [node name="House_M_3_002|Cube_212|Dupli|" parent="House_M_3_002" parent_id_path=PackedInt32Array(1644604359) index="0" unique_id=344353544]
surface_material_override/0 = ExtResource("6_q0cqc") surface_material_override/0 = ExtResource("6_q0cqc")
surface_material_override/1 = ExtResource("7_homdn") surface_material_override/1 = ExtResource("7_homdn")
[node name="Lanterne_011" parent="." index="9" unique_id=1514816515] [node name="Lanterne_011" parent="." index="9" unique_id=1023227540]
surface_material_override/0 = ExtResource("7_homdn") surface_material_override/0 = ExtResource("7_homdn")
surface_material_override/1 = ExtResource("6_q0cqc") surface_material_override/1 = ExtResource("6_q0cqc")
[node name="MSH_Staccioanta_1_023" parent="." index="10" unique_id=712801400] [node name="MSH_Staccioanta_1_023" parent="." index="10" unique_id=960191706]
surface_material_override/0 = ExtResource("8_aimrl") surface_material_override/0 = ExtResource("8_aimrl")
[node name="PaliLuci_009" parent="." index="11" unique_id=985008253] [node name="PaliLuci_009" parent="." index="11" unique_id=895643506]
surface_material_override/0 = ExtResource("9_tbfcp") surface_material_override/0 = ExtResource("9_tbfcp")
surface_material_override/1 = ExtResource("9_tbfcp") surface_material_override/1 = ExtResource("9_tbfcp")
[node name="Panchina_004" parent="." index="12" unique_id=728819824] [node name="Panchina_004" parent="." index="12" unique_id=1990542139]
surface_material_override/0 = ExtResource("9_tbfcp") surface_material_override/0 = ExtResource("9_tbfcp")
[node name="Strada_016" parent="." index="13" unique_id=1488681208] [node name="Strada_016" parent="." index="13" unique_id=913638745]
surface_material_override/0 = ExtResource("4_chuhj") surface_material_override/0 = ExtResource("4_chuhj")
[node name="Water_F_006" parent="." index="14" unique_id=734464738] [node name="Water_F_006" parent="." index="14" unique_id=188313823]
surface_material_override/0 = ExtResource("10_tbfcp") surface_material_override/0 = ExtResource("11_sc7dg")
[node name="grass2" type="Node3D" parent="." index="15" unique_id=830319566 groups=["weather_vegetables_node", "wind_node"]] [node name="grass2" type="Node3D" parent="." index="15" unique_id=830319566 groups=["weather_vegetables_node", "wind_node"]]

View File

@@ -13,6 +13,7 @@
[ext_resource type="Material" uid="uid://0x17mj2v807r" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds2.tres" id="6_scsij"] [ext_resource type="Material" uid="uid://0x17mj2v807r" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds2.tres" id="6_scsij"]
[ext_resource type="Material" uid="uid://baot4vy3fqrdw" path="res://tgcc/chunk/prop/flower/bush.tres" id="7_6ts01"] [ext_resource type="Material" uid="uid://baot4vy3fqrdw" path="res://tgcc/chunk/prop/flower/bush.tres" id="7_6ts01"]
[ext_resource type="Material" uid="uid://f5uoreickew7" path="res://tgcc/chunk/prop/flower/flower.tres" id="8_gg6s1"] [ext_resource type="Material" uid="uid://f5uoreickew7" path="res://tgcc/chunk/prop/flower/flower.tres" id="8_gg6s1"]
[ext_resource type="Material" uid="uid://d37iugof887py" path="res://tgcc/chunk/material/water_river.tres" id="8_rc623"]
[ext_resource type="PackedScene" uid="uid://c7hdw2g6sbygr" path="res://tgcc/chunk/prop/tree/bambù/bambù.tscn" id="9_fbq43"] [ext_resource type="PackedScene" uid="uid://c7hdw2g6sbygr" path="res://tgcc/chunk/prop/tree/bambù/bambù.tscn" id="9_fbq43"]
[sub_resource type="PlaneMesh" id="PlaneMesh_4bk23"] [sub_resource type="PlaneMesh" id="PlaneMesh_4bk23"]
@@ -74,37 +75,37 @@ script = ExtResource("2_6ts01")
west = true west = true
river_north = true river_north = true
[node name="Argini_014" parent="." index="0" unique_id=1139734568] [node name="Argini_014" parent="." index="0" unique_id=1144332199]
surface_material_override/0 = ExtResource("2_6cke1") surface_material_override/0 = ExtResource("2_6cke1")
surface_material_override/1 = ExtResource("2_6cke1") surface_material_override/1 = ExtResource("2_6cke1")
[node name="Argini_F_007" parent="." index="1" unique_id=1589622689] [node name="Argini_F_007" parent="." index="1" unique_id=1754711084]
surface_material_override/0 = ExtResource("2_6cke1") surface_material_override/0 = ExtResource("2_6cke1")
[node name="Chunk_024" parent="." index="2" unique_id=1992937907] [node name="Chunk_024" parent="." index="2" unique_id=1720184777]
surface_material_override/0 = ExtResource("2_6cke1") surface_material_override/0 = ExtResource("2_6cke1")
[node name="Chunk_033" parent="." index="3" unique_id=1670985495] [node name="Chunk_033" parent="." index="3" unique_id=1628229952]
surface_material_override/0 = ExtResource("3_dxc7w") surface_material_override/0 = ExtResource("3_dxc7w")
[node name="Cube_038" parent="." index="4" unique_id=441517098] [node name="Cube_038" parent="." index="4" unique_id=2039579000]
surface_material_override/0 = ExtResource("4_wiylo") surface_material_override/0 = ExtResource("4_wiylo")
[node name="Flower_013" parent="." index="5" unique_id=628414084] [node name="Flower_013" parent="." index="5" unique_id=1366790519]
visible = false visible = false
[node name="FlowerG_012" parent="." index="6" unique_id=154914059] [node name="FlowerG_012" parent="." index="6" unique_id=73383829]
visible = false visible = false
[node name="MSH_Staccioanta_1_014" parent="." index="7" unique_id=572229045] [node name="MSH_Staccioanta_1_014" parent="." index="7" unique_id=1893629780]
surface_material_override/0 = ExtResource("5_scsij") surface_material_override/0 = ExtResource("5_scsij")
[node name="Water_015" parent="." index="8" unique_id=1718475690] [node name="Water_015" parent="." index="8" unique_id=1485337117]
surface_material_override/0 = ExtResource("6_6ts01") surface_material_override/0 = ExtResource("6_6ts01")
surface_material_override/1 = ExtResource("6_6ts01") surface_material_override/1 = ExtResource("6_6ts01")
[node name="Water_F_007" parent="." index="9" unique_id=986965099] [node name="Water_F_007" parent="." index="9" unique_id=1341709621]
surface_material_override/0 = ExtResource("6_6ts01") surface_material_override/0 = ExtResource("8_rc623")
[node name="grass" type="Node3D" parent="." index="10" unique_id=970290101 groups=["weather_vegetables_node", "wind_node"]] [node name="grass" type="Node3D" parent="." index="10" unique_id=970290101 groups=["weather_vegetables_node", "wind_node"]]

View File

@@ -6,6 +6,7 @@
[ext_resource type="Material" uid="uid://wkegx4a21x7u" path="res://tgcc/chunk/prop/fence/fences.tres" id="3_1ies1"] [ext_resource type="Material" uid="uid://wkegx4a21x7u" path="res://tgcc/chunk/prop/fence/fences.tres" id="3_1ies1"]
[ext_resource type="Material" uid="uid://ce0bdk3mx2xao" path="res://tgcc/chunk/material/water_chunk.tres" id="4_i686r"] [ext_resource type="Material" uid="uid://ce0bdk3mx2xao" path="res://tgcc/chunk/material/water_chunk.tres" id="4_i686r"]
[ext_resource type="Material" uid="uid://jygb1hcokks5" path="res://tgcc/chunk/prop/grass/grass_bank.tres" id="5_ktw8y"] [ext_resource type="Material" uid="uid://jygb1hcokks5" path="res://tgcc/chunk/prop/grass/grass_bank.tres" id="5_ktw8y"]
[ext_resource type="Material" uid="uid://d37iugof887py" path="res://tgcc/chunk/material/water_river.tres" id="6_1x4pw"]
[ext_resource type="Material" uid="uid://fnjxocmx16b7" path="res://tgcc/chunk/prop/grass/grass_chunk.tres" id="6_5ybl1"] [ext_resource type="Material" uid="uid://fnjxocmx16b7" path="res://tgcc/chunk/prop/grass/grass_chunk.tres" id="6_5ybl1"]
[ext_resource type="Material" uid="uid://bjrb33qwp1p43" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds.tres" id="7_qdud6"] [ext_resource type="Material" uid="uid://bjrb33qwp1p43" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds.tres" id="7_qdud6"]
[ext_resource type="Material" uid="uid://0x17mj2v807r" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds2.tres" id="8_kb5sp"] [ext_resource type="Material" uid="uid://0x17mj2v807r" path="res://tgcc/chunk/prop/grass/grass_chunk_weeds2.tres" id="8_kb5sp"]
@@ -51,23 +52,23 @@ script = ExtResource("2_5ybl1")
river_north = true river_north = true
river_south = true river_south = true
[node name="Argini_012" parent="." index="0" unique_id=1084179435] [node name="Argini_012" parent="." index="0" unique_id=1496170995]
surface_material_override/0 = ExtResource("2_i686r") surface_material_override/0 = ExtResource("2_i686r")
[node name="Argini_F" parent="." index="1" unique_id=642828061] [node name="Argini_F" parent="." index="1" unique_id=1620075990]
surface_material_override/0 = ExtResource("2_i686r") surface_material_override/0 = ExtResource("2_i686r")
[node name="Grass_015" parent="." index="2" unique_id=2066454616] [node name="Grass_015" parent="." index="2" unique_id=992510499]
surface_material_override/0 = ExtResource("2_i686r") surface_material_override/0 = ExtResource("2_i686r")
[node name="MSH_Staccioanta_1_012" parent="." index="3" unique_id=2079392766 groups=["weather_node"]] [node name="MSH_Staccioanta_1_012" parent="." index="3" unique_id=1633713740 groups=["weather_node"]]
surface_material_override/0 = ExtResource("3_1ies1") surface_material_override/0 = ExtResource("3_1ies1")
[node name="Water_013" parent="." index="4" unique_id=1140122560] [node name="Water_013" parent="." index="4" unique_id=1791049567]
surface_material_override/0 = ExtResource("4_i686r") surface_material_override/0 = ExtResource("4_i686r")
[node name="Water_F" parent="." index="5" unique_id=650822427] [node name="Water_F" parent="." index="5" unique_id=1468867913]
surface_material_override/0 = ExtResource("4_i686r") surface_material_override/0 = ExtResource("6_1x4pw")
[node name="grass" type="Node3D" parent="." index="6" unique_id=1828409688 groups=["weather_vegetables_node", "wind_node"]] [node name="grass" type="Node3D" parent="." index="6" unique_id=1828409688 groups=["weather_vegetables_node", "wind_node"]]