4 ms·
So, what is the difference between value noise and perlin noise?
by donatzsky 14y ago
So, what is the difference between value noise and perlin noise?
- stephengillie 14y agoYea, the blog shows us what Value Noise would produce, and says this is easily confused with Perlin Noise, but does not show us what Perlin Noise output looks like.
- bionsuba 14y agoHere is a good article showing how to implement perlin noise and its outputs: http://freespace.virgin.net/hugo.elias/models/m_perlin.htm http://freespace.virgin.net/hugo.elias/models/m_perlin.htm Also, *yeah.
- Scaevolus 14y agoThat's actually not quite Perlin noise either. In Perlin noise, you set each grid point to a unit gradient vector, and then interpolate between them with a specific equation. This gives it useful mathematical properties, like being continuously differentiable, so the surface normals are smooth when you render it. That's not guaranteed with value noise. http://webstaff.itn.liu.se/~stegu/TNM022-2005/perlinnoiselinks/perlin-noise-math-faq.html http://webstaff.itn.liu.se/~stegu/TNM022-2005/perlinnoiselin...
- mjn 14y agoPerlin noise is a kind of gradient noise. The difference is that, in a value-noise generator, you assign a random value (from some distribution) to each grid point, and then interpolate between the values. In a gradient-noise generator, you assign random gradients to each grid point, and then use dot products to produce the actual values from the gradients. There's a StackExchange discussion of the subjective differences here: http://math.stackexchange.com/questions/184121/why-is-gradient-noise-better-quality-than-value-noise http://math.stackexchange.com/questions/184121/why-is-gradie...
- bhickey 14y agoValue noise and Perlin noise are bother coherent noise functions based on integer lattices. Perlin noise is a type of gradient noise. Value noise defines a pseudrandom value for each lattice point. Intermediate points are determined by interpolating the values of the adjacent lattice points. Value noise has discontinuous derivatives and looks blocky. Gradient noise defines a pseudo-randomly oriented vector at each lattice point. To find the value of an intermediate point you interpolate the vectors. If this stuff is interesting, I strongly recommend Texturing & Modeling: A Procedural Approach.