Shaders como herramienta creativa para el desarrollo visual

Taller online a cargo de Julián Daniel Puppo

Fecha

17, 19, 24 y 26 de agosto 2021 - 15 a 18h

Shaders como herramienta creativa para el desarrollo visual

Taller online Shaders como herramienta creativa para el desarrollo visual dictado por Julián Daniel Puppo.

Actividad gratuita con cupo limitado e INSCIPCIÓN CERRADA.
La selección de participantes será comunicada por correo electrónico.
Modalidad virtual mediante videoconferencia participativa. Se entregará certificado de asistencia una vez completada una encuesta online que se realizará al final del seminario.

Dirigido a
Artistas visuales vj´s y tecnoartistas que trabajan en el área visual con el deseo de expandir las posibilidades estéticas de su trabajo utilizando. Tener un conocimiento previo en programación no es excluyente pero sí recomendable.

Objetivos
El objetivo del taller consiste en acercar a los alumnos el uso de la tecnología de GLSL (también conocida simplemente como shaders) para poder ser aplicada en un uso creativo visual que potencie las posibilidades artísticas. Las aplicaciones de los shaders y los conocimientos impartidos en el curso son varias: pos procesamiento de imagen y video en tiempo real, visuales generativas a través del livecoding, diseño e implementación de animaciones 3D de alto rendimiento utilizando la técnica llamada Raymarching. El taller tiene una orientación multiplataforma, es decir que se va a enseñar como programar GLSL independientemente de la plataforma que elija el alumno, permitiéndole a éste la posibilidad de utilizar la plataforma que más se adecue a sus necesidades y gustos.

Contenidos
El contenido de los módulos será dictado en 4 encuentros de 3 horas. El curso estará separado en distintos módulos:

Módulo 1. Sintaxis del lenguaje:

  • Similitudes y diferencias con el lenguaje C.
  • Creación de variables e intercambios entre floats,vec2 , vec3 , vec4
  • Funciones : prototipo, declaraciones e invocación
  • Utilización de variables uniforms para conexión con plataforma
  • Input Output y generación de Coordenadas Cartesianas X e Y

Módulo 2. Osciladores visuales:

  • Utilización de funciones seno y coseno como osciladores visuales
  • Utilización de frecuencia, tiempo y amplitud de una onda en forma visual
  • Operaciones aritméticas sobre ondas (multiplicación, suma, resta y división).
  • Osciladores visuales anidados

Módulo 3. Colores:

  • Uso de la función Mix para crear interpolaciones entre colores.
  • Utilización del sistema HSB (hue saturation brightness) y RGB (red Green blue).
  • Operaciones aritméticas sobre colores (multiplicación, suma, resta y división).
  • Utilización de la diferencia de fase para generar paletas de colores
  • Funciones prediseñadas para Blendingmodes.

Módulo 4. Formas:

  • Uso del radio y ángulo como osicladores
  • Funciones step y smoothstep para la creación de círculos.
  • Modelando figuras a partir de un círculo y funciones.
  • Poligonos.
  • Movimiento de formas.
  • Formas con relleno y bordes de distintos colores.

Módulo 5. Operaciones matriciales:

  • Movimiento de las UV (translate básico).
  • Rotate y Scale
  • Operaciones matriciales aplicadas en distintas UVS conviviendo en un mismo espacio

Módulo 6. División del espacio:

  • Introducción a la función fract para el retorno de decimales.
  • Subdivisión del espacio.
  • UVs combinadas con distinta subdivisión.

Módulo 7. Ciclos iterativos uso del for:

  • Uso de ciclos iteractivos para crear varios círculos en distintas coordenadas polares.
  • Uso de ciclos iteractivos para subdivisión espacial.
  • Uso de ciclos iteractivos para el color
  • Uso de ciclos iteractivos combinados en función de un índice.

Módulo 8. Feedback:

  • Blending del feedback. Uso del add, mix y distintas maneras de superposición.
  • Operaciones matriciales sobre las UVs del feedback
  • Función de límite y decrecimiento

Módulo 9. Texturas:

  • Blending de texturas
  • Operaciones sobre las UV de la textura.
  • Operaciones sobre los canales de la textura.
  • Módulo 10. Patrones generativos.
  • Voronoi
  • Noise
  • Random
  • RidgeMF
  • RXR

Módulo 11. Utilización de distintas plataformas y ejemplos de uso de shaders:

  • Processing
  • Openframeworks
  • TouchDesigner
  • IDes webs(shadertoy, ISF).
  • Adaptación de un shader de shadertoy a nuestra plataforma de trabajo.

Módulo 12. Raymarching:

  • Raymarching básico de una esfera
  • Raymarching con combinación de figuras con distintos colores.
  • Raymarching con intersección de objetos utilizando ABS
  • Raymarching con operaciónes matriciales entre objetos.
  • Desplamientos a la función de distancia
  • Desplazamiento de cámara, sombras y niebla.
  • Subdivisión del espacio para figuras.

 

Julián Daniel Puppo
Artista multimedial, programador, técnico en computación graduado del Otto Krause (colegio técnico nro°1) y estudiante avanzado de la carrera de Artes Multimediales de la UNA. Con su trabajo, explora las posibilidades técnicas y estéticas que ofrecen las nuevas tecnologías, ampliando los horizontes posibles de las mismas, rompiendo la brecha de lo disponible a ser realizado. Expuso en el Centro Cultural Matienzo, Vorterix , el CCK y el Museo de Banco Provincia entre otros espacios. También realizó instalaciones interactivas para la fiesta nacional del sol, Para fiesta de fin de año de Claro e YPF. Mención de honor en el festival Fauna por su obra Amaranta. Lleva adelante su proyecto personal JPupper, en el cual se desempeña como visualista en vivo con código abierto y diferentes interfaces creadas por él mismo, también participa de numerosos proyectos como programador aplicado al ámbito de la creación audiovisual.

Bibliografía
Tutoriales: