
El ruido OpenSimplex es una función de ruido de gradiente n-dimensional (hasta 4D) que fue desarrollada por Kurt Spencer en 2014 para superar los problemas relacionados con patentes que rodean al ruido simplex , evitando al mismo tiempo los artefactos direccionales visualmente significativos característicos del ruido Perlin . [ 1 ]
El algoritmo comparte numerosas similitudes con el ruido simplex, pero tiene dos diferencias principales:
- Mientras que el ruido simplex comienza con un panal hipercúbico y lo comprime a lo largo de la diagonal principal para formar su estructura de cuadrícula, [ 2 ] el ruido OpenSimplex intercambia los factores de sesgo y sesgo inverso y utiliza un panal hipercúbico estirado. El panal hipercúbico estirado se convierte en un panal simplicial después de la subdivisión. [ 3 ] [ 4 ] Esto significa que tanto Simplex 2D como OpenSimplex 2D utilizan diferentes orientaciones del teselado triangular , pero mientras que Simplex 3D utiliza el panal disfenoidal tetragonal , OpenSimplex 3D utiliza el panal tetraédrico-octaédrico . [ 3 ]
- El ruido OpenSimplex utiliza un tamaño de núcleo mayor que el ruido simplex. El resultado es una apariencia más suave a costa del rendimiento, ya que es necesario determinar y considerar vértices adicionales en cada evaluación. [ 3 ]
OpenSimplex tiene una variante llamada "SuperSimplex" (u OpenSimplex2S), que es visualmente más suave. "OpenSimplex2F" es idéntico al SuperSimplex original.
Véase también
Referencias
- ↑ https://web.archive.org/web/20250731161310/https://uniblock.tumblr.com/post/97868843242/noise
- ↑ Ken Perlin, Noise hardware. En Real-Time Shading SIGGRAPH Course Notes (2001), Olano M., (Ed.). (pdf)
- 1 2 3 Espíritu de Hierro: Ruido Simplectic Blog de Michael Powell
- ↑ Stefan Gustavson, Simplex Noise Demystified (2005) (pdf)
Enlaces externos
- Entrada de blog que presenta el ruido de OpenSimplex
- Implementación actual del autor (OpenSimplex2)
- Biblioteca de Android
- Implementación en C
- Implementación de GPU en OpenCL
- Implementación altamente optimizada en C#
- Librería de ruido para el lenguaje de programación Rust que proporciona ruido OpenSimplex ; no codifica valores iniciales de gradiente.
- Implementación en Python
- Implementación en R
- Ruido (gráficos)
- Esbozos de software gráfico