OpenSimplex noise
OpenSimplex noise is an n-dimensional gradient noise function that was developed in order to overcome the patent-related issues surrounding Simplex noise, while continuing to also avoid the visually-significant directional artifacts characteristic of Perlin noise.
The algorithm shares numerous similarities with Simplex noise, but has two primary differences:
- Whereas Simplex noise starts with a Hypercubic honeycomb and squashes it down the main diagonal in order to form its grid structure,[1] OpenSimplex noise instead swaps the skew and inverse-skew factors and uses a stretched hypercubic honeycomb. The stretched hypercubic honeycomb becomes a Simplectic honeycomb after subdivision.[2] This means that 2D Simplex and 2D OpenSimplex both use different orientations of the Triangular tiling, but whereas 3D Simplex uses the Tetragonal disphenoid honeycomb, 3D OpenSimplex uses the Tetrahedral-octahedral honeycomb.[2]
- OpenSimplex noise uses a larger kernel size than Simplex noise. The result is a smoother appearance at the cost of performance, as additional vertices need to be determined and factored into each evaluation.[2]
See also
References
- ↑ Ken Perlin, Noise hardware. In Real-Time Shading SIGGRAPH Course Notes (2001), Olano M., (Ed.). (pdf)
- 1 2 3 Spirit of Iron: Simplectic Noise Michael Powell's blog
External links
- Blog post introducing OpenSimplex noise
- Heavily-optimized implementation in C#
- Noise library for the Rust programming language providing OpenSimplex noise
This article is issued from Wikipedia - version of the 11/22/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.