Interactive shading reference

Shape the highlight, not just the roughness.

Anisotropy stretches a specular highlight along a tangent direction. Use the live material below, then copy a starting point into Blender or Three.js.

Loading live material preview…

Brushed aluminum

Anisotropy0.82
Roughness0.34
Rotation
IOR1.50

Preset values are practical renderer starting points, not measured universal constants. Lighting, UV tangents, normal maps, and scale change the result.

Drag to orbit · controls update the shader live
Brushed metalSatin weaveHair fibersPaper grainSkin microstructureThin glassUV tangents matterBrushed metalSatin weaveHair fibersPaper grainSkin microstructureThin glassUV tangents matter

A reference shelf built for iteration.

Search by material or behavior. Select a preset to push its values into the live shader. These values intentionally avoid false precision: use them to find the neighborhood, then tune against your lighting and texture scale.

No material matches that search. Try “metal,” “cloth,” “organic,” or “glass.”

Anisotropy is directional roughness. The direction comes from tangents.

Why one number is not enough

The anisotropy slider controls highlight elongation, but the tangent field controls where that highlight points. A brushed disc needs radial or concentric directions; woven satin needs a UV-aligned weave; hair needs strand tangents. If the direction is wrong, a plausible strength still looks wrong.

Round → stretched

At zero, the microfacet response is isotropic and the highlight stays round. Increasing the value separates roughness behavior across tangent and bitangent directions, stretching the reflection.

0→1

Metal

Brushing is visible because tiny grooves organize surface normals. Keep metallic at 1, then tune roughness and tangent flow before chasing anisotropy strength.

Cloth and hair

Fiber direction is the signal. Sheen or a dedicated hair model may matter more than a single anisotropy value, but a directional highlight remains a useful preview.

Paper, skin, glass

These are usually subtle. Paper grain can be directional, skin needs subsurface scattering, and ordinary glass is typically isotropic unless coated, stretched, or micro-scratched.

Translation guide

Move the look between renderers without copying blindly.

Blender and Three.js expose similar concepts, but their maps, tangent conventions, and rotations are not interchangeable without checking the result.

1. Establish the isotropic baseline

Set anisotropy to zero. Match base color, metallic, IOR, transmission, and average roughness first. This isolates the directional part of the material instead of using anisotropy to hide a bad base shader.

baseline = color + metal/transmission + roughness + IOR

2. Build a trustworthy tangent field

In Blender, connect the intended UV map or Tangent node. In a glTF/Three.js path, verify the mesh has tangents and the anisotropy map uses non-color data. Rotation is applied in tangent-bitangent space.

direction = tangent × rotation × anisotropyMap.rg

3. Tune under a long area light

A broad strip light makes highlight stretch legible. Rotate both object and light. Test at grazing angles, then validate under the final environment. Save values only after the direction survives those checks.

final preset = starting point + UV direction + scene lighting

Use the preset. Then distrust it productively.

Copy the current values, move them into your renderer, and tune under your real geometry, UVs, textures, and lights. That is the shortest path from a reference number to a believable material.

Material values copied
Enjoy this tool? Build your own with Super