Sistema VJ GR es un sistema completo de visuales en vivo construido en TouchDesigner: una librería de más de 120 shaders y 30 escenas, reactivos al audio, que se mezclan de a dos en tiempo real desde un único panel de control o desde un controlador MIDI. Pensado para operar en la pista, con poca luz y sin margen de error.
El problema: ser distinto en cada set
En fiestas y shows el VJ necesita mostrar algo nuevo cada vez. Programar un shader desde cero para cada evento es lento, y Shadertoy tiene miles de shaders open-source de altísima calidad que no corren directo en TouchDesigner: usan otra variante de GLSL y otra arquitectura de pases. Adaptarlos a mano, uno por uno, y además operarlos en vivo con decenas de cortes por show, no escala.
Y en vivo el problema se multiplica: una interfaz dispersa en varias ventanas, controles genéricos que nadie recuerda y shaders que de golpe se comen la GPU son lo que hace caer un show.
La solución: un sistema, no una colección de shaders
Cada shader pasa por TD Shader Translator, mi propia herramienta, que lo adapta a TouchDesigner y le inyecta un set de controles estándar: análisis de audio (kick, graves, medios, agudos), blackout, invert y color-tint, más perillas y pads con nombre propio (uGlow, uZoom, uTwist, no knob1). Todos los shaders hablan el mismo idioma, así que cualquiera responde al mismo audio, al mismo controlador y a los mismos efectos.
Sobre esa base construí un panel de control único que reúne todo lo que hace falta durante un set.
Qué incluye
- Mezcla de dos slots. Clic izquierdo carga el Slot 1, clic derecho el Slot 2; un crossfader con modos de fusión los combina, y otro crossfader mezcla el mundo de shaders con el de escenas.
- Selector con semáforo de rendimiento. Cada miniatura se colorea según su costo real de GPU (verde, ámbar, rojo), así sé qué puedo combinar sin arriesgar el show.
- Audio-reactividad calibrable. Bandas de graves, medios y agudos, kick, snare y ritmo, con umbral, ganancia y suavizado ajustables en vivo y un visor de señal para calibrar mirando la música real.
- Control físico y en pantalla a la vez. 8 perillas y 8 pads de un Akai LPD8; los pads funcionan como toggle o momentáneos y los rangos de cada perilla se editan desde el panel.
- Telemetría en vivo. FPS, tiempo de frame, frames caídos, memoria de video, temperatura de GPU y resolución de salida siempre a la vista.
- Protegido ante caídas. Autosave rotativo cada 8 minutos con tres copias, para no perder trabajo si el equipo se reinicia en pleno evento.
// convención de uniforms, presente en todos los shaders uniform float uTime; uniform vec2 uTDResolution; uniform float uKick, uLow, uMid, uHigh; uniform float uAudioReactive, uAudioInfluence; uniform float uBlackout, uInvert; uniform float uColorTintEnabled, uColorTintR, uColorTintG, uColorTintB;
Resultados técnicos
- 120+ shaders y 30 escenas operables desde una sola interfaz.
- 20 % a 57 % menos de GPU en los shaders más pesados, medido con un banco de pruebas A/B y sin cambiar su carácter visual.
- Salida a 1920×1080 a 30 FPS, con telemetría para detectar caídas en el momento.
- Un solo panel que reemplazó a varias interfaces sueltas: menos ventanas, menos errores bajo presión.
- Versionado con git: cada ajuste queda registrado con su razonamiento, y se puede volver atrás si algo se rompe.
Sistema VJ GR ya sonó en fiestas como Gintonic y Never Stop.
Lo que puedo ofrecerte
- Visuales en vivo para tu fiesta, show o marca, operados por mí con este sistema.
- Un sistema de control a medida en TouchDesigner para tu obra, instalación o evento: panel de operación, audio-reactividad y control MIDI, como hice en Percepción Expandida.
- Adaptación de shaders y escenas a tu proyecto, con los controles estándar para operarlos en vivo.
- Optimización y puesta a punto de un proyecto de TouchDesigner que se queda corto de rendimiento.
Si necesitás visuales en vivo o un sistema de control para tu proyecto, escribime y lo hablamos.