Advanced Texture Maps in Three.js
1. gradientMap
- Used only with:
MeshToonMaterial - Used for toon shading; maps brightness to gradient.
- It's required to set
Texture.minFilterandTexture.magFiltertoTHREE.NearestFilterwhen using this type of texture. - Must be a 1D grayscale texture (e.g., 8x1) with nearest filter for toon effect.
Following maps are only effective with MeshPhysicalMaterial
2. anisotropyMap (Custom/ShaderMaterial)
Anisotropyis the property of a material or substance to exhibit different physical properties when measured along different directions. This means that the characteristics of anisotropic materials vary based on the direction of measurement.- Red and green channels represent the anisotropy direction in [-1, 1] tangent, bitangent space, to be rotated by
.anisotropyRotation. The blue channel contains strength as [0, 1] to be multiplied by.anisotropy. - Simulates anisotropic surface reflections (like brushed metal).
- Note: Not natively supported in built-in materials; requires shader material or extensions like OSL/GLSL or post-processing.
- Requires custom shader setup or extensions like
MeshAnisotropyMaterialfrom third-party libs.
3. clearcoatMap
Clear coatrepresents the intensity of the clear coat layer, from 0.0 to 1.0 and is to enable multilayer materials that have a thin translucent layer over the base layer.- The red channel of this texture is multiplied against
.clearcoat, for per-pixel control over a coating's intensity
4. clearcoatNormalMap
- Can be used to enable independent normals for the clear coat layer
5. clearcoatRoughnessMap
- Roughness of the clear coat layer, from 0.0 to 1.0.
- The green channel of this texture is multiplied against
.clearcoatRoughness, for per-pixel control over a coating's roughness.
6. iridescenceMap
Iridescenceis the phenomenon of certain surfaces that appear gradually to change colour as the angle of view or the angle of illumination changes- Controls the presence of iridescence (color shifts like soap bubbles).
- The red channel of this texture is multiplied against
.iridescence, for per-pixel control over iridescence.
7. iridescenceThicknessMap
- Controls the thickness of the iridescence layer, affecting how colors shift.
- A texture that defines the thickness of the iridescence layer, stored in the green channel.
8. sheenRoughnessMap
Sheenis a soft lustre on a surface.- The alpha channel of this texture is multiplied against
.sheenRoughness, for per-pixel control over sheen roughness.
9. sheenColorMap
- The RGB channels of this texture are multiplied against
.sheenColor, for per-pixel control over sheen tint.
10. specularIntensityMap
- The alpha channel of this texture is multiplied against
.specularIntensity, for per-pixel control over specular intensity.
11. specularColorMap
- Specifies the RGB color of specular reflections.
- The RGB channels of this texture are multiplied against .specularColor, for per-pixel control over specular color.
12. thicknessMap
- Controls the thickness of a transparent object, affecting how light refracts.
- A texture that defines the thickness, stored in the green channel.
13. transmissionMap
- Controls areas that allow light to pass through (like glass).
- The red channel of this texture is multiplied against
.transmission, for per-pixel control over optical transparency.