materialSheenRoughness
Provides the material's final sheen roughness, with built-in logic that multiplies the `.sheenRoughness` property by the `.sheenRoughnessMap` texture's alpha channel.
Core Advantages
Its core advantage is encapsulating complexity: it fully automates the specific and error-prone logic of 'extracting data from a map's alpha channel and multiplying by a float value,' allowing developers to easily control the sheen's blurriness.
Common Uses
Differentiating between fabrics like silk (low roughness) and velvet (high roughness).
Using a texture map to simulate wear and tear on cloth.
Creating materials with a soft, diffused sheen like microfiber or felt.
Creatively simulating a thin layer of frost or dust on surfaces.
How to adjust
Configure by modifying the properties of a `MeshPhysicalMaterial` in JavaScript. `.sheenRoughness` (0-1) controls the base roughness. If `.sheenRoughnessMap` is provided, the final roughness is `base_value * map_alpha_channel_value`, enabling localized variations.
Code Examples
1// In the physical lighting model, materialSheenRoughness is used in the sheen BRDF calculation
2const sheenBRDF = D_Charlie( materialSheenRoughness, dot( N, H ) );