Perlin Noise CIKernel (Composition by smokris)
Here's a CIKernel implementation of the Improved Perlin Noise algorithm, based on the reference implementation http://mrl.nyu.edu/~perlin/noise/ .
Drop "Perlin Noise CIKernel.qtz" into
"perlin.qtz" is an example of how to use it.
This is fairly inefficient, as Core Image Kernel Language doesn't support arrays (!), so I ended up dumping the Perlin permutation array into an image (see "perlin-tga.c") and then loading the image into QC and sampling it. Suggestions regarding how to improve performance are welcomed.
More like this