node package manager
Love JavaScript? Your insights can make it even better. Take the 2017 JavaScript Ecosystem Survey »




If you want to use this library in a WebGL context, please consider using this one instead.


Warning : This is a web-only package : it should not be used in a Node environment.

npm install wo-perlin


  • new PERLIN.Generator( [ table ] )

Returns a new generator instance. If table is set, then it will be used as random lookup table otherwise a random table will be generated.

  • [instance].octaves
  • [instance].frequency
  • [instance].persistence

Generator configurations variables.

  • [instance].generate( start, size, callback )

This function will call callback() for each pixel in the N-dimensional range between start and start+size, with two parameters : the coordinates of the current pixel, and the related Perlin value.

var generator = new PERLIN.Generator( );
generator.generate( [ 0, 0 ], [ 2, 2 ], function ( point, value ) {
    console.log( point, value );
} );


Implementation by Maël Nison, from Jeremy Cochoy's paper.