← COURSE LIBRARY
Procedural · 50 min
Perlin Noise and fBm
IntermediateNeeds: InterpolationNeeds: Coordinate spaces
Sign in to record mastery, quiz results and reviews for this course.Sign in
You will be able to
- Describe how gradient noise differs from value noise and why it matters.
- Tune octaves, lacunarity and gain to hit a target silhouette.
- Budget octave count against shader cost.
The concept
Perlin noise interpolates dot products of random gradients at lattice corners, producing a smooth field with no visible grid. Fractional Brownian motion sums octaves of that noise at increasing frequency (lacunarity) and decreasing amplitude (gain), which is what gives terrain its self-similar detail. Each octave costs a full noise evaluation, so octave count is a direct performance decision.
In your engine
Use the Mountain SOP or `anoise()`/`onoise()` in VEX; octaves, lacunarity and roughness map directly.
Practice (4)
Predict the result
You double lacunarity from 2 to 4 with gain unchanged. The terrain becomes:
Tune the value
With gain 0.5, what is the amplitude of the 4th octave if octave 1 has amplitude 1?
Concept check
Value noise shows visible axis-aligned blockiness. Gradient noise avoids it because:
Find the bug
Your fBm is a flat grey. Which mistake matches?
Knowledge check
01Lacunarity controls:
02Gain (persistence) controls:
03Cost of fBm scales:
04Simplex noise is preferred in higher dimensions because:
Build challenge
Produce a heightfield that hits a specified silhouette: broad plateaus with sharp ridgelines, using no more than 5 octaves. Document the octave/lacunarity/gain values and why each was chosen.
SELF-CHECK RUBRIC