The noise library includes native-code implementations of Perlin
"improved" noise and Perlin simplex noise. It also includes a fast
implementation of Perlin noise in GLSL, for use in OpenGL shaders. The
shader code and many of the included examples require Pyglet, the
native-code noise functions themselves do not, however.
The Perlin improved noise functions can also generate fBm (fractal
Brownian motion) noise by combining multiple octaves of Perlin noise.
Functions for convenient generation of turbulent noise are also
included.
Get it here:
Pypi: http://pypi.python.org/pypi/noise
Google Code (svn): http://code.google.com/p/caseman/
If you have absolutely no idea what this is for, have a look here for
some background:
http://www.noisemachine.com/talk1/
Then install it and try the examples (planet.py and bump.py in particular)
Enjoy.
-Casey
2008/7/18 Casey Duncan <casey....@gmail.com>:
Very nice!
Only 1 problem (pyglet HEAD, python 2.5):
rjones@l-rjones:~/Desktop/noise-1.0b1/examples$ python animate_tex.py
Traceback (most recent call last):
File "animate_tex.py", line 49, in <module>
create_3d_texture(_perlin.noise3, 64, 4.0/64.0)
File "animate_tex.py", line 34, in create_3d_texture
v = func(x * scale - half, y * scale - half, z * scale - half,
repeat=4, octaves=4)
TypeError: 'repeat' is an invalid keyword argument for this function
Richard
Ok, yeah that example was a bit more of an experiment than an actual
useful sample. I think I failed to update it when I made some api
changes. I think I'll probably just replace it with something more
interesting.
Thanks for pointing that out.
-Casey