feat(lighting): flicker tipus foc per antorxes

This commit is contained in:
JailDesigner committed 2026-05-12 22:07:25 +02:00
1 parent 3195746189
commit 35aaa6c519
8 files changed
+124 -16

No files matched your search

+14
View File
@@ -20,3 +20,17 @@ gradient:
inner_intensity: 1.0
mid_intensity: 0.9
outer_intensity: 0.8
# Modulació del radi quan una entitat declara `flicker: true` al seu
# bloc `light:`. El radi efectiu per frame és:
# r_eff = r_base + A1·sin(2π·f1·t + φ1) + A2·sin(2π·f2·t + φ2)
# on (φ1, φ2) es deriven de la posició de l'emissor per a que cada
# antorxa balancegi en una fase diferent (sense estat per emissor).
# Combinant dues sinusoides amb freqüències incommensurables s'obté
# un patró "fluid" que el ull llegeix com a foc; pujar `noise_*`
# aporta més inquietud, baixar-ho fa la flama més serena.
flicker:
wave_amplitude_px: 2
wave_frequency_hz: 3.0
noise_amplitude_px: 1
noise_frequency_hz: 7.0
+8 -3
View File
@@ -17,8 +17,13 @@ flags:
animations:
idle: { frames: [0, 1, 2, 3], fps: 8, loop: true }
# Cercle de llum estàtic centrat a l'antorxa. El radi és en píxels del
# canvas; el gradient global (data/config/lighting.yaml) hi posa la
# forma (3 anells). Omet el bloc per fer una antorxa "apagada".
# Cercle de llum centrat a l'antorxa. El radi és en píxels del canvas;
# el gradient global (data/config/lighting.yaml) hi posa la forma (3
# anells). Amb `flicker: true` el radi efectiu oscil·la per frame
# (suma de dues sinusoides amb fase derivada de la posició) per a
# que el cercle "respiri" com una flama; els paràmetres del flicker
# també viuen al config global. Omet el bloc per fer una antorxa
# "apagada".
light:
radius: 40
flicker: true