03 Tiempo, interacción y repetición
uniform: una imagen que te sigue
Mueve el puntero sobre el lienzo o tócalo para pasar su posición a la GPU.
uPointer0.030.4
Ejercicio
Se ejecuta una vez por píxelArrastra los números o edita el código
Lado JS
gl.uniform2f(uResolution, …, …)
gl.uniform2f(uPointer, 0.50, 0.50)
canvas.addEventListener('pointermove', (e) => {
pointer = [e.offsetX / width, 1 - e.offsetY / height]
})
gl.uniform2f(uPointerLocation, ...pointer)uPointer es solo un vec2; JS gestiona los eventos y entrega la coordenada a la GPU.
Pruébalo
- Mueve el puntero sobre el lienzo
- Cambia exp por 1.0 - smoothstep(...) para obtener una mancha de borde duro