25 de enero de 2019

Programando música, dibujos 2D y escenas 3D con Gibber


Tengo 2 hijas pequeñas y como propósito de inicio de año me propuse para más tiempo de calidad con ellas. Y que mejor para ello que encontrar algo que nos guste a ambos. Están los socorridos juegos de mesa y de cartas, pero a mi me gusta mucho programar, y a mis hijas a una le gusta mucho la música y a otra mucho las artes gráficas.

Buscando información sobre como juntar esos mundos, descubrí que existían las algorave, que es la abreviatura de "algorithmic rave" y que consiste en una rave (evento en donde la gente baila música electrónica) con la particularidad de que la música es generada a partir de algoritmos, a menudo utilizando técnicas de "live coding" o programación en directo.

Estuve probando distintos entornos y el que más me convenció fue Gibber, porque no hace falta instalar nada, se ejecuta desde el propio navegador y permite generar tanto música como dibujos 2D y escenas 3D.

A continuación un pequeño código de ejemplo:

a = Drums('x*ox*xo-')
  .pitch.seq( [.5,1,2,4], 1/8 )
  .pan.seq( [-1,0,1], 1/8 )
  .shuffle.seq( null, 1 )

a = Cube()
  .rotation.seq( [.5,1,2,4], 1/8 )
  .position.x.seq( [-50,0,50], 1/8 )
  .scale.seq( [.5,1,2,4], 1/8 )
Y aquí os dejo un pequeño vídeo con el código ejecutándose:



Bibliografía:
- Manual de Gibber.
- Referencia de Gibber.

0 comentarios:

Publicar un comentario