4 ms·
Due to expire next year! I wonder if we're going to see existing projects swap out existing noise generators for simplex, or if it's mostly going to be for new
by andreareina 5y ago
Due to expire next year! I wonder if we're going to see existing projects swap out existing noise generators for simplex, or if it's mostly going to be for new projects. Guessing it's probably going to be the latter.
- spijdar 5y agoMakes me wonder how much revenue Perlin ended up getting from that patent, and if he'd consider it worth it in hindsight.
- speedgoose 5y agoA lot of projects are created in parts of the world without software patents. So I think nothing will change.
- ginko 5y agoThe problem is that simplex noise has a different look than perlin noise so it's not a drop in replacement. The article mentioned the higher frequency, but IMO it also has a bit more noticeable "spikes". One thing the article only brushed, but is the main advantage of simplex noise is its performance. Perlin noise scales O(2^n) with the number of dimensions, but simplex noise scales O(n). That's because Perlin noise interpolates the nearest 2^n gradient values in its hypercube neighborhood, but simplex noise only has to check n+1 values in its simplex. For 3D and especially 4D noise that's a huge performance advantage. edit: Turns out simplex noise is O(n^2), still faster than Perlin noise.
- MillenialMan 5y ago> simplex noise scales O(n) Typo? Simplex noise scales at O(n^2), not O(n).
- ginko 5y agoHm, not a typo, I thought it was O(n) since that's how simplices scale with dimensions. Where does the extra *n come from? I guess identifying the right simplex isn't free.. Right, the gradients will still have more dimensions to evaluate.
- MillenialMan 5y agoO(n) measures the number of vector operations, but each one operates over a vector, so there are n^2 arithmetic operations. This is also true for perlin noise - there are 2^n vector operations, but the arithmetic complexity is O(n.2^n). Obviously this ignores the parallelizability of the algorithms, which is probably the more important factor at this point, and the ability to be hardware accelerated. (Edit: the complexity is outlined on page 20 of the original simplex noise paper[1]. Just ctrl+f "complexity") [1] https://www.csee.umbc.edu/~olano/s2002c36/ch02.pdf https://www.csee.umbc.edu/~olano/s2002c36/ch02.pdf