Material docente · p5.js
Sesión 04: Interacción con el usuario
Sesión centrada en convertir el sketch en un sistema reactivo mediante el ratón, la rueda y el teclado. Se trabajaron eventos de interacción y variables globales de p5.js para construir varios sketches que responden directamente a las acciones del usuario.
Objetivos
- Entender la diferencia entre un sketch autónomo y uno interactivo.
- Responder a acciones del usuario mediante funciones de evento.
- Usar la posición y el movimiento del ratón como parámetros visuales.
- Utilizar el teclado para modificar el comportamiento del sketch.
- Combinar distintas entradas para crear experiencias visuales reactivas.
Funciones de interacción
mouseClicked(): ejecuta código cuando el usuario hace clic.mouseWheel(): permite responder al desplazamiento de la rueda o trackpad.keyPressed(): ejecuta código cuando se pulsa una tecla.
Recorrido
-
Comienza con
clicked-constellationspara ver cómo un clic añade una nueva marca exactamente enmouseXymouseY. -
Continúa con
wheel-trailspara comparar la posición anterior del ratón con la actual mediantepmouseXypmouseY. -
En ese mismo sketch, usa la rueda para variar el grosor del trazo y
observar cómo
mouseWheel()modifica el estado. -
Después explora
key-playground, dondekeyPressed()cambia el símbolo dibujado ykeyIsPressedactiva un modo continuo mientras la tecla siga pulsada. -
Continúa con
interactive-artpara combinar clic, rueda y teclado en un único sistema donde cambian el color, el tamaño y la figura principal. -
Termina con
draw-io, un estudio libre de dibujo en el que el movimiento del ratón deja rastro continuo y una pulsación de teclado permite comprobar cómo otro evento puede alterar la imagen.
Sketches de la sesión
- Abrir sketch de constelaciones por clic (mouseClicked)
- Abrir sketch de trazos con rueda y movimiento (mouseWheel, mouseX, pmouseX)
- Abrir sketch de teclado interactivo (keyPressed, key, keyIsPressed)
- Abrir sketch que combina color, tamaño y figura con clic, rueda y teclado
- Abrir sketch draw-io de dibujo libre con rastro del ratón y evento de teclado
Práctica
Durante la sesión se crearon varios sketches cortos para experimentar con diferentes formas de interacción: dibujar siguiendo el ratón, modificar parámetros mediante clic y rueda, y cambiar estados o comportamientos utilizando el teclado. Los dos sketches finales proponen sintetizar esas ideas en piezas más abiertas, donde varias entradas controlan simultáneamente el resultado visual.
Siguiente paso
A partir de estas entradas podemos avanzar hacia sistemas con movimiento propio, velocidad, aceleración y comportamientos más complejos, que más adelante servirán de base para partículas y sistemas generativos dinámicos.