by Tuğrul Yazar | August 20, 2023 21:03
Perlin noise is a gradient noise function that has been widely used in computer graphics, procedural generation, and various other applications to generate natural-looking patterns. Here is my brief exploration of the Perlin Noise Generator. Although I didn’t fully follow the traditional steps[1] the result looks similar. I started with the square grid and generated random gradient vectors on every grid corner. Then, I implemented the original algorithm’s dot product method. To calculate the value of a point in this 2D space, I choose the four closest vectors. Plus, I created four more vectors that have tails on the corners and tips on the point in question. Then, I calculated the dot products between these four corners and four gradient vectors. After this, I quit using the traditional algorithm (the interpolation and ease function). Instead, I finished the algorithm by just calculating the linear interpolations of those dot products.

This Grasshopper definition generates random terrain[2] models by using my noise generator explained above. I used the Move and Mesh components to generate the result. You can play with the overall height multiplier to make it more mountainous or flat. The output is a single mesh surface in Rhinoceros. The code is using native Grasshopper components. Thus, no add-ons are necessary for it to work.
[3]You can rebuild the definition by looking at the diagram above. However, if you want to support this website by downloading my Grasshopper file; would you consider being my Patreon? Here is the link to my Patreon page[4] including the working Grasshopper files for the Perlin Noise Generator and more.

Source URL: https://www.designcoding.net/perlin-noise/
Copyright ©2026 designcoding unless otherwise noted.