Capas independientes, projectM en el mapping y catalogo de la galeria

Mapping
- Los clips salian del reves: mapper.js activaba UNPACK_FLIP_Y_WEBGL, pero el
  modelo va con origen arriba-izquierda y texImage2D ya sube la primera fila
  en t=0, asi que el flip la mandaba al final. Comprobado renderizando el
  mapper real en Chromium headless con una fuente mitad roja / mitad azul.
- projectM se puede usar YA en una capa: los .milk de data/presets-projectm se
  traducen a Butterchurn en el navegador al elegirlos (milkdrop-preset-
  converter). La capa MilkDrop gana 'biblioteca' (butter | projectm) sin
  cambiar su firma, para no recrear el contexto WebGL al cambiar de una a otra.
  Medido: 100/100 presets de una muestra convierten, 84/84 de los que llevan
  shaders warp/comp; ~7 ms por preset.
- Cada capa tiene su pestana arriba y su propia vista, y '+ CAPA' crea una y
  entra en ella: con varias capas, ir y volver a MAPPING no era viable.
- Dos capas MilkDrop sin preset ya no salen identicas (cogian el indice 0):
  cada instancia elige uno al azar y lo escribe en el estado.
- Una capa nueva ya no nace en la fuente "motor", que es el lienzo del motor
  activo y hacia que dos capas ensenaran lo mismo.

Galeria de visuales
- scripts/catalogar-visuales.py: ficha de cada clip (pelicula, personajes,
  duracion) y, sobre todo, si es una silueta de verdad y cuanta figura tiene.
  Distingue silueta de corte crudo por el negro puro del fondo: 0,63-0,90
  frente a 0,04-0,06, sin zona gris.
- El panel lista los clips agrupados por pelicula, con nombre legible y aviso
  de los que casi no tienen figura, en vez del nombre del archivo.
- Soporte de siluetas con canal alfa (.webm VP9): transparencia de verdad, sin
  recorte por luminancia. El shader del mapper ya la respeta.

Documentacion
- docs/visuales.md nuevo; pendiente.md al dia con lo hecho y lo que queda.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
hacklab 2026-08-02 14:56:01 +02:00
parent 5d5223db9f
commit f017246f0e
30 changed files with 3771 additions and 292 deletions

View file

@ -20,16 +20,32 @@ para consultarse a saltos después.
Cómo correr FOSFENO en un portátil Debian, Ubuntu o Mint, sin Raspberry Pi.
- [Uso del panel](uso.md)
Cómo se maneja desde el móvil, qué hace cada motor de visuales y cómo se
configura cada opción.
Cómo se maneja desde el móvil, las dos pestañas (MOTORES y MAPPING), qué
hace cada motor de visuales y cómo se configura cada opción.
- [El Mezclador VJ](mezclador.md)
Las mezclas a fondo: las dos capas, cómo poner visuales de MilkDrop de
fondo, los modos de mezcla y los efectos de color.
- [La galería de visuales](visuales.md)
El catálogo de clips: cómo se generan las fichas, cómo distingue una silueta
de un trozo de película y por qué unos clips salen marcados como flojos.
- [Projection mapping](mapping.md)
Cómo deformar las visuales para encajarlas en superficies físicas: malla,
máscaras y edición desde el panel arrastrando con el ratón o el dedo.
Cómo deformar las visuales para encajarlas en superficies físicas, y cómo
poner **un visual distinto en cada zona**: capas, fuentes, malla y máscaras.
- [Solución de problemas](problemas.md)
Qué hacer cuando algo no arranca, no se ve o no suena. Incluye cómo leer
los mensajes de error que aparecen en el propio panel.
- [Seguridad](seguridad.md)
Qué asume el diseño, qué pasa si pinchas en una wifi pública y cómo cerrar
el panel con una clave compartida (el QR ya la lleva dentro).
- [Arquitectura](arquitectura.md)
Para quien vaya a tocar el código: las tres piezas, el estado, los eventos
de WebSocket, cómo se añade un motor y los criterios que sigue el proyecto.
Si solo quieres empezar rápido, el archivo `README.md` de la raíz del
proyecto tiene la versión resumida.