Thursday, September 4, 2025
HomeLanguagesJavascriptp5.js noise() Function

p5.js noise() Function

The noise() function is used to return a number generated by Perlin noise at the given coordinates. This value is semi-random, which means that the value would be fixed for a coordinate for the lifespan of the program.

The Perlin noise value is different from the value returned by the random() function as this noise has a more natural and harmonic succession compared to the standard one.

Syntax:

noise(x, [y], [z])

Parameter: This function accept three parameters as mentioned above and described below:

  • x: This is a number which represents the x-coordinate in the noise space.
  • y: This is a number which represents the y-coordinate in the noise space. It is an optional parameter.
  • z: This is a number which represents the z-coordinate in the noise space. It is an optional parameter.

Return Value: It returns the Perlin noise value between 0 and 1.

Below examples illustrates the noise() function in p5.js:

Example 1: Plotting the noise values of the y-coordinate of the moving point.

  • Program:




    let x_coordinate = 100.0;
    let plot_x = 10.0;
       
    function setup() {
        createCanvas(400, 200);
    }
       
    function draw() {
       
        // Get noise with x coordinate
        x_noise = noise(x_coordinate) * 100;
       
        // Plot the point with random noise
        strokeWeight(10);
        point(plot_x, x_noise);
       
        // Increment the x coordinate
        x_coordinate++;
       
        // Increase the x coordinate
        // for plotting
        plot_x++;
    }

    
    
  • Output:
    output-graph

Example 2: This example demonstrates the semi-random property of a function.

  • Program:




    let x_coordinate = 0.0;
    let plot_y = 0.0;
       
    function setup() {
        createCanvas(400, 200);
    }
       
    function draw() {
          
        if (x_coordinate < 5) {
       
            // Get noise with x coordinate
            x_noise = noise(x_coordinate);
         
            // Output the noise along with
            // its corresponding coordinate
            coord_text = "Noise for x coordinate "
                + x_coordinate + " is " + x_noise;
              
            text(coord_text, 10, plot_y);
       
            // Increment the x coordinate
            x_coordinate++;
       
            // Increase the y coordinate
            // for plotting
            plot_y = plot_y + 15;
        }
        else
            x_coordinate = 0;
    }

    
    
  • Output:
    x_coord_output

Example 3: This example uses two parameters for defining a point in the noise space.

  • Program:




    let x_coordinate = 0.0;
    let y_coordinate = 0.0;
    let plot_y = 0.0;
       
    function setup() {
        createCanvas(400, 200);
    }
       
    function draw() {
          
        if (x_coordinate < 10) {
       
            // Get noise with x and y coordinates
            xy_noise = noise(x_coordinate, y_coordinate);
       
            // Output the noise along with
            // its corresponding coordinate
            coord_text = "Noise for coordinates: "
                + x_coordinate + ", " + y_coordinate
                + " is " + xy_noise;
            text(coord_text, 10, plot_y);
       
            // Increment the x and y
            // coordinates
            x_coordinate++;
            y_coordinate++;
       
            // Increase the y coordinate
            // for plotting
            plot_y = plot_y + 15;
        }
    }

    
    
  • Output:
    xy_coord_output

Online editor: https://editor.p5js.org/
Environment Setup: https://www.geeksforgeeks.org/p5-js-soundfile-object-installation-and-methods/

Reference: https://p5js.org/reference/#/p5/noise

Whether you’re preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, neveropen Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we’ve already empowered, and we’re here to do the same for you. Don’t miss out – check it out now!
RELATED ARTICLES

Most Popular

Dominic
32264 POSTS0 COMMENTS
Milvus
81 POSTS0 COMMENTS
Nango Kala
6628 POSTS0 COMMENTS
Nicole Veronica
11799 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11858 POSTS0 COMMENTS
Shaida Kate Naidoo
6749 POSTS0 COMMENTS
Ted Musemwa
7025 POSTS0 COMMENTS
Thapelo Manthata
6698 POSTS0 COMMENTS
Umr Jansen
6716 POSTS0 COMMENTS