Modified Noise for Evaluation on Graphics Hardware
Abstract
Perlin noise is one of the primary tools responsible for the success of procedural shading in production rendering. It breaks the crisp computer generated look by adding apparent randomness that is controllable and repeatable. Both Perlin s original noise algorithm and his later improved noise were designed to run efficiently on a CPU. These algorithms do not map as well to the design and resource limits of the typical GPU. We propose two modifications to Perlin s improved noise that make it much more suitable for GPU implementation, allowing faster direct computation. The modified noise can be totally evaluated on the GPU without resorting to texture accesses or "baked" into a texture with consistent appearance between textured and computed noise. However, it is most useful for 3D and 4D noise, which cannot easily be stored in reasonably-sized textures. We present one implementation of our modified noise using computation or direct texturing for 1D and 2D noise, and a procedural combination of 2D textures for the 3D noise.
BibTeX
@inproceedings {10.2312:EGGH:EGGH05:105-110,
booktitle = {Graphics Hardware},
editor = {Michael Meissner and Bengt-Olaf Schneider},
title = {{Modified Noise for Evaluation on Graphics Hardware}},
author = {Olano, Marc},
year = {2005},
publisher = {The Eurographics Association},
ISSN = {1727-3471},
ISBN = {1-59593-086-8},
DOI = {10.2312/EGGH/EGGH05/105-110}
}
booktitle = {Graphics Hardware},
editor = {Michael Meissner and Bengt-Olaf Schneider},
title = {{Modified Noise for Evaluation on Graphics Hardware}},
author = {Olano, Marc},
year = {2005},
publisher = {The Eurographics Association},
ISSN = {1727-3471},
ISBN = {1-59593-086-8},
DOI = {10.2312/EGGH/EGGH05/105-110}
}