Talk:Simplex noise

message: Perhaps there should be some more discussion of what a "simplex" is in this context?
Gustavson's external link talks about treating n! n dimensional hypertriangles as a squashed hypercube, but does not describe how that works for n arbitrary dimensions -- the code provides examples for 2, 3 and 4 dimensions but does not describe the mapping -- nor the details of the reverse mapping -- in enough detail for me to derive the general case.
For example, in three dimensions, the mapping is:
   s=(x+y+z)/3
   <x, y, z>+s
At this point, the integer parts of the vector are extracted as <X, Y, Z> and a reverse mapping is made, where the reverse mapping is
   t=(X+Y+Z)/6
   <X,Y,Z>-t
Identifying this vector as <X0, Y0, Z0>, the coordinates within the hypercube are then <x, y, z> - <X0, Y0, Z0>
Working through this with some arbitrary random numbers <10.8839, 0.305498, 16.3427> the mapped squashed hypercube origin seems to be <20, 9, 25> and the reverse-mapped coordinates from within this hypercube would seem to be roughly <-0.1161, 0.305498, 0.3427> 
But from the description of the algorithm, I expected all coordinates within the hypercube to have values between 0 and 1.
Is my understanding of these concepts flawed?  Is the implementation of the idea flawed?  Is the idea itself flawed?   
Perhaps someone with more familiarity with this subject could describe this geometry of squashed hypercubes?  —Preceding unsigned comment added by 159.54.131.7 (talk) 21:37, 14 September 2007 (UTC)
replies: text: To be honest, I always found this part a little confusing as well.  I never understood how the mapping was chosen, if there are other possible mappings, etc.  You might give Gustavson an email asking about it.  I contacted him about a year ago when I was working on tiling the noise, and he was quite helpful.  I do remember that the nice round numbers for the 3D case don't hold true for other dimensions.  If you get an answer, please be sure to write it here ;)  --Numsgil 03:44, 15 September 2007 (UTC)
replies: text:  According to Stefan, I should have started with a vector of numbers in the domain [0, 1] before hitting the example code in the .pdf  —Preceding unsigned comment added by 159.54.131.7 (talk) 17:59, 17 September 2007 (UTC)
thread_title:  "Squashed hypercube?" 

message: Seems we have a disagreement between the sources on the order of complexity.  My guess is that the way it's presently known it's O(n).  Since conceptually you're doing # dimensions * #vertices evaluations.  Maybe Perlin's comment there is for a working draft and he fixed it later in the final presentation?  --Numsgil (talk) 03:13, 21 June 2008 (UTC)
replies: text: Perhaps, but it's usually the man who invented the algorithm that knows the most about it. Perhaps I should email him and ask? Darkuranium (talk) 16:50, 5 September 2008 (UTC)
replies: text: Sure.  How would we cite it, though?  --Numsgil (talk) 06:45, 6 September 2008 (UTC)
replies: text:  In N dimensions, a simplex has N+1 corners, and for each simplex corner you need to evaluate a polynomial in N dimensions. Therefore, the total computational complexity scales roughly as O(N^2), although the rate of increase is closer to O(N) in lower dimensions. Ordo-stuff assumes N is large, but here we're dealing with single digit numbers. As noted above, 2D simplex noise involves a little more work than 2D classic noise. (Stefan Gustavson, not logged in) 130.236.243.226 (talk) 13:00, 4 February 2011 (UTC)
thread_title:  Order of complexity 

message: I think that an example image of what simplex noise looks like would be rather helpful. --83.100.151.189 (talk) 06:52, 7 September 2015 (UTC)
thread_title:  Suggestion: Example Image 

message: Has the patent expired? Awesomecat713 (talk) 02:53, 15 January 2022 (UTC)
thread_title:  Patent