Import
Bayer is an addon, and must be imported explicitly, see Installation#Addons.
import { bayer16 } from 'three/addons/tsl/math/Bayer.js';
Static Methods
.bayer16( uv : Node.<vec2> ) : Node.<vec4>
This TSL function can be used to sample a Bayer16 texture which is a 16x16 texture with a Bayer Matrix pattern. It can be used for dithering effects but also as an alternative to blue-noise. When used with Ray Marching specifically in VolumeNodeMaterial#offsetNode, it reduces banding problem, thus being able to use fewer steps without affecting the visuals as much.
| uv |
The uv to sample the bayer16 texture. |
- Returns: The sampled bayer value.
.bayerDither( color : Node.<vec3>, steps : Node.<float> ) : Node.<vec3>
This TSL function applies Bayer dithering to a color input. It uses a 4x4 Bayer matrix pattern to add structured noise before color quantization, which helps reduce visible color banding when limiting color depth.
| color |
The input color to apply dithering to. |
| steps |
The number of color steps per channel. Default is |
- Returns: The dithered color ready for quantization.