Previously @hamoid compared toxiclibs SimplexNosie with processing ValueNoise (Perlin). Here I used his test to compare OpenSimplex (which I’m developing for ruby-processing) with this PiCrate sketch:-
require 'picrate'
require 'toxiclibs'
class Hamoid < Processing::App
ZOOM = 0.03
def setup
background(0)
stroke(255, 50)
noise_mode NoiseMode::OPEN_SMOOTH
end
def draw
xx = rand(width)
yy = rand(height)
500.times do
a = if xx < width / 2
PI * noise(xx * ZOOM, yy * ZOOM)
else
PI * Toxi::SimplexNoise.noise(xx * ZOOM, yy * ZOOM)
end
xx += cos(a)
yy += sin(a)
point(xx, yy)
end
end
def settings
size(500, 500)
end
end
Hamoid.new
Here’s the result with OpenSimplex2 on LHS
What can be seen here is that both noise generators produce a similar pattern, however toxiclibs SimplexNoise shows a clear diagonal bias. There are options in OpenSimplex2, and currently I am thinking of supporting the above classic Simplex as well as a version more suitable for terrain generation (with fast and smooth options for both) with a default as classic fast SimplexNoise.