materialIridescenceThickness
Provides the final calculated thickness of the iridescence thin film, which is the key parameter that directly controls the final interference color pattern.
Core Advantages
Its core advantage is its programmability: it allows complex node networks (like animated noise or textures) to dynamically and per-pixel drive the film thickness, which is crucial for creating realistic, flowing iridescence effects.
Common Uses
Simulating flowing soap bubbles or oil films using animated noise or textures.
Creating complex, pre-designed patterns on sci-fi materials using texture maps.
Adding subtle, random color shifts to surfaces by driving thickness with fine noise.
Driving the thickness with a `TimerNode` for animated, flowing color effects.
How to adjust
Override it by assigning a new node (e.g., `texture`, `noise`) to `material.iridescenceThicknessNode`. The output of this node (0-1) is then mapped to the physical thickness range defined by `material.iridescenceThicknessRange` (e.g., `[100, 400]`) to produce the final color.
Code Examples
1// Use animated noise to simulate a flowing, variable thickness
2const thicknessMap = noise( uv().add( timer.mul( 0.1 ) ) );
3
4// Override the material's default thickness logic with our procedural map
5material.iridescenceThicknessNode = thicknessMap;