InicioArte Generativo y Patrones AlgorítmicosMuestreo de Disco de Poisson

🔘 Muestreo de Disco de Poisson

Muestreador interactivo de disco de Poisson (Bridson) que produce distribuciones de puntos de ruido azul. Compara con aleatorio uniforme y cuadrículas regulares, pinta mapas de densidad.

Arte Generativo y Patrones Algorítmicos3DModerado60 FPS
poisson-disk ↗ Abrir independiente

Sobre esta simulación

Esta simulación implementa el algoritmo de Bridson para el muestreo de disco de Poisson: una forma rápida y acelerada por cuadrícula de dispersar puntos de modo que ninguno quede más cerca de un radio mínimo elegido r, sin las agrupaciones y huecos de la colocación puramente aleatoria. Cada punto nuevo crece a partir de un padre activo probando hasta k candidatos en el anillo [r, 2r] a su alrededor, y una cuadrícula de fondo con tamaño de celda r/√2 permite que la comprobación de distancia entre vecinos se ejecute en tiempo O(1), de modo que todo el algoritmo escala como O(n). El conjunto de puntos resultante tiene la firma estadística del ruido azul — se suprime la agrupación de baja frecuencia, visible en el espectro de potencia radial en vivo.

🔬 Qué muestra

Tres estrategias de generación de puntos lado a lado: ruido azul de Bridson, colocación aleatoria uniforme y una cuadrícula regular. Los puntos morados marcan los que siguen en la lista activa (todavía pueden generar candidatos); los puntos blancos son puntos "muertos" cuyo vecindario está lleno. Un tenue anillo parpadea en rojo o morado alrededor de cada candidato rechazado o aceptado mientras se ejecuta el algoritmo.

🎮 Cómo usarlo

Cambia de modo con los botones de opción, luego ajusta el Radio mínimo r (6–40px) y los Intentos k (5–60) — un k mayor encuentra empaquetados más ajustados a costa de más candidatos rechazados. La velocidad de animación controla los puntos generados por fotograma. Activa Radio variable (densidad) y Pintar mapa de densidad para arrastrar directamente en el lienzo y esculpir regiones de muestreo más denso o disperso; alterna Mostrar cuadrícula de fondo y Recuadro de espectro radial para ver la estructura de aceleración y la firma del ruido azul.

💡 ¿Sabías que...?

Los conjuntos de puntos de disco de Poisson (ruido azul) son muy apreciados en gráficos por computadora precisamente porque la visión humana es muy sensible a la agrupación de baja frecuencia — por eso el ruido azul se usa para el tramado de imágenes, la colocación de árboles o hierba en el terreno de videojuegos, el muestreo de píxeles en trazadores de rayos, e incluso para disponer las células fotorreceptoras en la retina, que los biólogos descubrieron que siguen un patrón casi de disco de Poisson.

Preguntas frecuentes

¿Qué es el muestreo de disco de Poisson?

El muestreo de disco de Poisson genera un conjunto de puntos aleatorios en el espacio de modo que cada par de puntos esté separado por al menos una distancia mínima r, mientras sigue pareciendo irregular y orgánico en lugar de parecido a una cuadrícula. Se sitúa entre la dispersión totalmente aleatoria (que se agrupa) y una cuadrícula regular (que parece artificial), y es la forma estándar de producir distribuciones de puntos de "ruido azul".

¿Cómo funciona paso a paso el algoritmo de Bridson?

Se comienza con un punto semilla aleatorio y se añade a una "lista activa". Repetidamente se elige un punto aleatorio de la lista activa y se prueban hasta k candidatos aleatorios en el anillo entre r y 2r alrededor de él. Se acepta el primer candidato que esté a al menos r de distancia de todos los puntos existentes y se añade tanto al conjunto de puntos como a la lista activa; si ninguno de los k intentos tiene éxito, el punto padre se elimina de la lista activa. El proceso termina cuando la lista activa está vacía.

¿Por qué el algoritmo usa una cuadrícula de fondo?

Comprobar un nuevo candidato contra todos los puntos existentes tomaría un tiempo O(n) por candidato, haciendo que todo el algoritmo fuera O(n²). El truco clave de Bridson es una cuadrícula de fondo con tamaño de celda r/√2, elegido de modo que cada celda pueda contener como máximo un punto aceptado. Un candidato solo necesita comprobar su propia celda y el vecindario circundante (un pequeño número fijo de celdas), por lo que cada comprobación se ejecuta en O(1), y todo el algoritmo se ejecuta en tiempo O(n) para n puntos de salida.

¿Qué es el "ruido azul" y por qué importa?

El ruido azul describe una distribución de puntos cuyo espectro de potencia tiene poca energía en las frecuencias espaciales bajas — lo que significa que no hay grandes agrupaciones ni grandes huecos vacíos, solo variación de grano fino distribuida uniformemente. Esta propiedad es visualmente importante porque el ojo humano es muy sensible a patrones de baja frecuencia como agrupaciones o artefactos de moiré. Por eso el muestreo de ruido azul es la técnica estándar para el punteado, el tramado, el antialiasing y la dispersión procedimental de objetos como árboles, rocas o hierba de forma natural.

¿Cómo crea el muestreo de radio variable gradientes de densidad?

En lugar de usar un radio fijo r en todas partes, la distancia mínima local se puede consultar en un mapa de densidad: se usa un radio pequeño en regiones densas (permitiendo que los puntos se sitúen más cerca entre sí) y un radio mayor en regiones dispersas (separando más los puntos). La comprobación de vecindad usa entonces el mayor de los radios del candidato y de cada punto existente, de modo que el empaquetado se mantiene consistente en todas partes. Esto produce una densidad de puntos que varía suavemente manteniendo la misma garantía de no solapamiento en todas partes, que es exactamente lo que la herramienta Pintar mapa de densidad te permite esculpir a mano.

⚙ Bajo el capó

El muestreador de ruido azul de Bridson en acción: una lista activa crece aceptando candidatos a una distancia de r a 2r — y rechazando todo lo que esté más cerca que r. Compara con aleatorio uniforme y observa el espectro radial.

Canvas 2DRuido AzulBridsonMuestreoCuadrícula Espacial

3D · Renderizador Three.js / WebGL · Objetivo 60 FPS · se ejecuta totalmente en el cliente, sin instalación

¿Qué encontraste?

Añadir pasos de reproducción (opcional)