37 lines
1.5 KiB
YAML
37 lines
1.5 KiB
YAML
# Configuració global del sistema d'il·luminació.
|
|
#
|
|
# Cada llum emissora (player, torxa, mòmia, ...) té un únic paràmetre
|
|
# propi: el radi en píxels. La forma de la llum dins d'aquest radi
|
|
# (els tres anells del gradient) viu en aquest fitxer perquè és una
|
|
# decisió de "feel" comuna a totes les entitats — així pots tocar la
|
|
# corba aquí sense haver de modificar 10 YAMLs.
|
|
#
|
|
# Forma del gradient (centre → vora):
|
|
# 0..inner_ratio del radi → inner_intensity (zona totalment il·luminada)
|
|
# inner_ratio..mid_ratio → mid_intensity (anell mig)
|
|
# mid_ratio..1.0 → outer_intensity (anell exterior)
|
|
# fora del radi → light_level de la sala
|
|
#
|
|
# Les intensitats són factors 0..1 que es multipliquen sobre el píxel
|
|
# final del canvas. inner=1.0 vol dir "píxel sense alterar".
|
|
gradient:
|
|
inner_ratio: 0.5
|
|
mid_ratio: 0.85
|
|
inner_intensity: 1.0
|
|
mid_intensity: 0.8
|
|
outer_intensity: 0.6
|
|
|
|
# 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
|