Files
tgcc-artest/Scenes/Fili.gdshader
Matteo Sonaglioni 8faf4e91b5 Ponte - Pali
2026-03-30 20:22:00 +02:00

28 lines
968 B
Plaintext

shader_type spatial;
render_mode blend_mix, depth_draw_opaque, cull_disabled;
// Colore del filo (nero o grigio scuro)
uniform vec4 albedo_color : source_color = vec4(0.1, 0.1, 0.1, 1.0);
// Parametri controllati dal tuo script
uniform float forza_vento = 1.0;
uniform float velocita_vento = 2.0;
void vertex() {
// COLOR.r è la nostra "pittura". È 0 dove c'è il palo (quindi non si muove)
// ed è 1.0 al centro della pancia del filo.
float capacita_movimento = COLOR.r;
// Creiamo un'onda fluida usando il tempo e la posizione nel mondo
// così ogni filo oscilla in modo leggermente diverso dall'altro
float onda_vento = sin(TIME * velocita_vento + NODE_POSITION_WORLD.x * 0.5) * forza_vento;
// Spingiamo il vertice sugli assi X e Z.
VERTEX.x += onda_vento * 0.1 * capacita_movimento;
VERTEX.z += onda_vento * 0.05 * capacita_movimento;
}
void fragment() {
ALBEDO = albedo_color.rgb;
ROUGHNESS = 0.9;
}