# Why is perlin noise looping?

**URL:** <https://discourse.processing.org/t/why-is-perlin-noise-looping/10155>\
**Category:** Coding Questions\
**Created:** [April 10, 2019, 2:50am UTC](https://discourse.processing.org/t/why-is-perlin-noise-looping/10155 "2019-04-10T02:50:17Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![jeremydouglass](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/jeremydouglass/32/20_2.png) [@jeremydouglass](https://discourse.processing.org/u/jeremydouglass)\
**Post date:** [April 13, 2019, 11:11pm UTC](https://discourse.processing.org/t/why-is-perlin-noise-looping/10155/4 "2019-04-13T23:11:24Z")

</div>

> [@happymoep](#):
>
> Thanks but I know how noise works and normally noise is not supposed to **repeat** at all.

@happymoep – unfortunately, you are misinformed. For just one example, Perlin noise is 0 at all grid points by design. It is also designed to be amenable to tiling – which is alignment repetition.

There are many related questions on the Processing forums about how to create seamless tiling with 1D or 2D Perlin noise – which is possible. You have the opposite problem – you are seeing artifacts related to repetition, and you don’t want them. One method of avoiding this is to stretch your sampling to fit within your period / octaves ratio.

> the ratio of period to octaves that gives you a repeating pattern. In 2D, it creates a “tile” that seamlessly matches its neighbors; in 1D it creates a wrapping line (or a circular outline). Here is an in-depth discussion of how noise settings affect the way that Perlin noise repeats: [tiles - How do you generate tileable Perlin noise? - Game Development Stack Exchange](https://gamedev.stackexchange.com/a/23705/95377)  
> from: [How to close a "noisy" circular shape? - Processing 2.x and 3.x Forum](https://forum.processing.org/two/discussion/comment/120584/#Comment_120584)

Keep in mind that pseudorandom generators are pseudo-- they often have strong repetition artifacts, even when this ISN’T by design. Classic Perlin noise implementations do repeat **by design** in a range dependent on their period / octave settings.

see also: [java - Perlin Noise function returning same results for different inputs - Stack Overflow](https://stackoverflow.com/a/9577407/7207622)

---

_[View the full topic](https://discourse.processing.org/t/why-is-perlin-noise-looping/10155)._
