Live data from Hacker News

Noise in Creative Coding

varun.ca

11–20 of 23 posts

Re: Noise in Creative Coding

#11

This is a very important concept to understand in visual design too. Sometimes perfect alignment, symmetry, etc... can be the wrong way to do something. Hardly anything in nature is 100% symmetrical. These are sometimes things that go unnoticed by the conscious mind but your subconcious will pick up on it.

Agreed! Aesthetics is item g) in Knuth's list of example applications for 'Numbers that are "chosen at random"':

"A little bit of randomness makes computer-generated graphics and music seem more lively" (TAOCP, Vol 2 3rd Ed., Ch. 3, p 2)

Re: Noise in Creative Coding

#12
Really nice article and demos, very informative.

Maybe unsurprisingly, noise is a really important aspect of audio and music as well. A lot of synthesizers have a parameter for adding white or pink noise to sounds. What's interesting is in a lot of music, my ears would never pick out the noise without actively listening very closely, but if you take the noise away the music sounds way more plain and empty in a very subtle way.

Re: Noise in Creative Coding

#13

This is a very important concept to understand in visual design too. Sometimes perfect alignment, symmetry, etc... can be the wrong way to do something. Hardly anything in nature is 100% symmetrical. These are sometimes things that go unnoticed by the conscious mind but your subconcious will pick up on it.

I have an old tribal rug (Turkish/Afghan?) that has a "evil eye" (but a good evil eye...) weaved into it in order to break the otherwise perfect symmetry of the design.

Re: Noise in Creative Coding

#15

Note the algorithm is patented(!) per Wikipedia: https://en.wikipedia.org/wiki/Simplex_noise#Legal_status There are six patent claims that I have no interest in reading. Apparently there is also an OpenSimplex noise for circumventing the patent, but it only goes up to 4D [simplex usefully goes up to 5D].

There's OpenSimplex by Kurt Spencer. I made a port of his original java implementation to C a few years ago.

https://github.com/smcameron/open-simplex-noise-in-c

Edit:

Here's the original: https://github.com/KdotJPG/OpenSimplex2

Re: Noise in Creative Coding

#16

Note the algorithm is patented(!) per Wikipedia: https://en.wikipedia.org/wiki/Simplex_noise#Legal_status There are six patent claims that I have no interest in reading. Apparently there is also an OpenSimplex noise for circumventing the patent, but it only goes up to 4D [simplex usefully goes up to 5D].

There's OpenSimplex by Kurt Spencer. I made a port of his original java implementation to C a few years ago. https://github.com/smcameron/open-simplex-noise-in-c Edit: Here's the original: https://github.com/KdotJPG/OpenSimplex2

It's worth noting that OpenSimplex has different characteristics to Simplex in higher dimensions. Specifically some have noticed a stark tendency to form orbs in 4D, so it's definitely worth comparing the output of all 3 (perlin, simplex, and OpenSimplex) to see if they give you what you're looking for.

Additionally, it may or may not be legally distinct (hasn't been tested).

Re: Noise in Creative Coding

#18
> There are two flavours of noise—Perlin and Simplex.

Value noise? Worley? There's a ton of algorithms, not just Perlin's. I like Pixar's Wavelet more than the patent-free Simplex implementations, which are all kinda disappointing knockoffs.

Value noise is comically easy to implement, and comes in handy in a pinch. Usually loads of artifacts. Perlin noise is also easy but a bit more intricate (my first attempt at a fixed-point implementation got a sign wrong).

Notably I think Minecraft had a buggy implementation of multidimensional noise for a long long time, visible along chunk boundaries in the form of very sharp edges/transitions.

Re: Noise in Creative Coding

#19
post #2

As an aspiring plotter artist (is that a thing?) I find this to be a very good resource, thanks for putting it together.

Same - I picked up a working HP7475a last week and have found some sharpies that fit. This article just accelerated my learning by months

Re: Noise in Creative Coding

#20

> There are two flavours of noise—Perlin and Simplex. Value noise? Worley? There's a ton of algorithms, not just Perlin's. I like Pixar's Wavelet more than the patent-free Simplex implementations, which are all kinda disappointing knockoffs. Value noise is comically easy to implement, and comes in handy in a pinch. Usually loads of artifacts. Perlin noise is also easy but a bit more intricate (my first attempt at a f…

Perlin noise is comically easy to import, and it's better than value noise in pretty much every way. It's also not super hard to implement. It's like value noise but with vectors on the plane instead of scalars. There's a tiny bit more math to do, but it's not complicated. If you have done game engine development or linear algebra, it's right up your alley, but also not hard for the general programmer to implement with copy and paste.
Post reply on HN