Experiments with Simplex Noise
For the main part, I use three cases of noise: alpha, beta and gamma.
Alpha is regular simplex, beta uses the alpha noise in as an added dimension, gamma uses the beta in an added dimension (stricly speaking, you don't need a new dimension for the beta/gamma effects, but I have deemed it to be prettier that way).
While creating this, I attempted to remove as much repeated code as I possibly could, without hurting efficiency and readability too much. There's probably better ways of doing it, but here I utilize an object called opt as a parameter to modify function behavior. This allows for easy comparisons of combination, which is what is the difference between this document and the previous
Set a new random seed.
α/β/γ with orthograd movement
The orthograd (or gradient-orthogonal) movement is based on a heightmap, where the successor of a point is a slight movement in a direction orthogonal on the gradient for that point. The lineage is fading grayscale, and the comparison is of the alpha, beta and gamma heightmaps
Start
End
Converged α/β/γ/δ with orthograd movement
An extra "delta" noise added to show the convergence. Instead of piping the previous iteration directly into the next noise dimension, the "converged"-successor averages all previous iterations. After initially becoming more complex, it gradually settles to a more simple state. This property is not displayed in any of the other successor functions.
Start
End
Compositional α/β/γ, orthograd
By combining two different scales of the noise, it gets a more distorted look. Here it's a weighted average 1:4 between the unscaled noise and the 4x-scaled noise (ie. (noise(x,y) + noise(4x,4y))/5*4). Again, the left to right is alpha, beta, gamma, with grayscale gradient based on the noise-value in the points.
Start
End
Terrainical α/β/γ, orthograd
Like compositional noise, it's a weighted average of different scales, but this time with two more levels. This gives the resulting noise a terrain-like feel when colored correctly. The weights used are 1, 4, 16 and 64.
Start
End
Grayscale heightmap of α/β/γ
Each point is colored by its value in the noise spaces. -1 is black, 1 is white
Start
End
Grayscale heightmap of compositional α/β/γ
Each point is colored by its value in the noise spaces. -1 is black, 1 is white
Start
End
Grayscale heightmap of terrainical α/β/γ
Each point is colored by its value in the simplex spaces. -1 is black, 1 is white
Start
End
Why I call it terrainical noise.
Colored like a terrain, with blue on one helf and yellow-green-white on the other.
Start
End
Comparison of Success
Comparison of successor functions. Left-to-right is gradient, rotational and orthogonal movement.
The rows are the three noise spaces, α, β and γ. The successor functions are functions from a point and a given noise space to a new point, it's successor. Gradient follows the noise space gradient, orthogonal goes orthogonal on the gradient, and the rotational moves according to a direction determined by the two offset positions of the point in the noise space.
Start
End
Convergence of Colorspaces
Using the converging successor to determine the color values. Each color is offset enough from the others that they effecively belong in independent noise spaces.
Start
End
Comparison of Circles
Comparison of successor functions and noise spaces when initalized from a circle. Left-to-right are the gradient, rotational and orthogonal movements, top-down are the α, β and γ spaces. Up until now, it has been random points in space that gave birth to the lines. Any function for placing points works, and I personally find circles to be one of the better ways.
Start
End
Comparison of Color from Circles
Same as the above, but with color added from the simplex color space. The color space is continuous, meaning that there's never any sudden jump in color.
Start
End
Comparison of Gradual Color Longlines from Circles
Same as the above but now with reduced movement precision, making the lines longer and some interesting consqeuences.
Start
End
Applied color space manipulation
Manipulating the color space. Left column show their row's most characteristic alteration as continuous maps, and the two to the right is similar maps applied. Very small differences, but in some cases the color is notably muted, and others the grid-pattern is more visible.
Start
End
Comparison of Frames
The gradual transparancy of the lines is lost with the gradient and rotational successors. They are more likely to converge onto paths.
Start
End
Variable width bands
Insteaded of drawing from one point to the other, it draws a line otrhogonal on the difference, giving it a broad band-like figure.
Start
End
Rot/Vel/Gra/GrR/OrR/Ort success on alpha
Added three new successor functions: velocity, gradrot and orthorot. Velocity moves away form the point with a velocity determined by two noise values, grad and orthorot is the gradient and orthogonal successor with a rotation determined by the noise space.
Start
End
Rot/Vel/Gra/GrR/OrR/Ort with bands on alpha
Added three new successor functions: velocity, gradrot and orthorot. Velocity moves away form the point with a velocity determined by two noise values, grad and orthorot is the gradient and orthogonal successor with a rotation determined by the noise space.
Start
End
alternative success
Added three new successor functions: velocity, gradrot and orthorot. Velocity moves away form the point with a velocity determined by two noise values, grad and orthorot is the gradient and orthogonal successor with a rotation determined by the noise space.
Start
End