Implicit and Explicit Procedural
Noise By Neil Blevins Created On: Apr 3rd 2015
Updated On: Feb 22nd 2026
Software: Any
Sometimes you hear the terms Implicit and Explicit Procedural Noise,
and might wonder what that means?
A simple definition:
1) An Implicit thing in CG is where a mathematical equation represents
something.
2) An Explicit thing in CG is where you have a good approximation of
that mathematical algorithm, but it's not perfect.
So for example, in geometry, an implicit model is where it calculates
the sphere as an equation, a standard sphere equation would be x^2 +
y^2 + z^2 = 1. So if you want to get the xyz point anywhere on that
sphere, it can be calculated to an exact mathematical position.
A polygonal sphere is an explicit model, because you only have an
approximation of a true sphere. Even if you increase the number of
polygons, you're just getting a better and better approximation, you
will never actually reach a perfect sphere at any point. And when you
zoom closer to the sphere, you'll see the polygons.
In texturing, a standard procedural noise is implicit (for example,
Perlin noise),
because when you zoom in, it just calculates more of the image based on
the original algorithm, so you never reach a point where you can't zoom
in any more.
Something like a bitmap is an explicit image, since the result is
stored as a set of pixels, if you zoom in past the pixel resolution of
the image, you don't get more information, and it just looks all
pixelated. Its an approximation of the original implicit noise.
So what is "Explicit Noise"? The texture software Substance uses
Explicit Noise. While they are secretive about the exact formula,
basically their noises are made up by taking an
image and repeatedly placing it on a 2d surface, each randomly rotated
and placed, then the image is subdivided and the process repeats.
This can create patterns that are very similar to implicit procedural
noise, but with a few different advantages and disadvantages.
Advantages:
One advantage is you can create a larger number of noise looks
because you're starting with any arbitrary image.
The noises can also be seamless.
Disadvantages:
The main disadvantage is you lose functionality such as
scale/frequency and unlimited resolution.
Another example of a procedural pattern that is Explicit is Texture
Bombing, which involves dropping image particles on a surface with
random positions, rotations and scales.
For example the Photoshop plugin FilterForge has a "Bomber"
feature...
The result can look very noise like, but since you're using 2d images
as particles (in this case, stars), they are explicit, and will reveal
resolution issues when you get too close.
Anyways, hope this helps to at least slightly demystify the difference
between Implicit and Explicit Procedural Noise.