Skip to content

plottertools/pnoise

Repository files navigation

pnoise

pnoise is a pure-Python, Numpy-based, vectorized port of Processing's noise() function. The p in pnoise stands for Processing, Perlin, Python, "port", and probably other things I haven't though of yet.

Why?

I wrote this port before switching to vnoise and, although I'm no longer using it, I figured I would keep it around.

How does it compare to vnoise?

pnoise vnoise
Algorithm "classic Perlin noise of 1983" "Perlin improved noise"
License LGPL v2.1 MIT
Scalar API
Vectorized API
3D function
2D function ❌ (can be derived from 3D but slower)
1D function ❌ (can be derived from 3D but slower)

See a performance comparison here.

Installation

pip install pnoise

License

LGPL 2.1, see LICENSE file.