Chapter 26. Implementing Improved Perlin Noise

Simon GreenNVIDIA Corporation

This chapter follows up on Ken Perlin’s chapter in GPU Gems, “Implementing Improved Perlin Noise” (Perlin 2004). Whereas Ken’s chapter discussed how to implement fast approximations to procedural noise using 3D textures, here we describe a working GPU implementation of the improved noise algorithm in both Microsoft Direct 3D Effects (FX) and CgFX syntax that exactly matches the reference CPU implementation.

Random but Smooth

Noise is an important building block for adding natural-looking variety to procedural textures. In the real world, nothing is perfectly uniform, and noise provides a controlled way of adding this randomness to your shaders.

The noise function has several ...

Get GPU Gems 2: Programming Techniques for High-Performance Graphics and General-Purpose Computation now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.