Skip to Content
DocumentationFeaturesDetail Textures

Detail Textures

Detail Textures stacks a secondary albedo and normal map on top of the base layer, usually at a much higher tiling rate. Because the detail layer breaks up the base pattern, the eye stops reading the macro-tiling, and close-ups gain genuine surface complexity.

When to use it

  • Tiled environment textures that read repetitive at distance.
  • Hero props that need micro-scratches up close.
  • Skin — pore-level detail over the base albedo.
  • Foliage — micro-grain on leaves and bark.

How it works

The shader samples _DetailAlbedoMap and _DetailNormalMap at the secondary tiling, then blends them into the base layer. Albedo uses an overlay-style mix (base * detail * 2, biased to grey) so neutral detail textures preserve the base brightness; normals combine through Reoriented Normal Mapping.

Properties

Inspector labelShader propertyTypeDefaultDescription
Detail Albedo_DetailAlbedoMapTexture2DgreySecondary albedo. Neutral grey means no albedo change.
Detail Normal_DetailNormalMapTexture2DbumpSecondary tangent-space normal.
Detail Tiling_DetailTilingVector4(8,8,0,0)Tiling (xy) and offset (zw) for the detail UV.
Albedo Strength_DetailAlbedoStrengthFloat (0–1)1.00 = no albedo blend, 1 = full.
Normal Strength_DetailNormalStrengthFloat (0–2)1.0Detail-normal influence.
Detail Mask_DetailMaskTexture2DwhiteWhere the detail layer applies.
Detail UV Channel_DetailUVChannelEnumUV0Mesh UV channel for the detail sample.

Usage

  1. Author or source a grey-grunge detail texture — 50% grey is neutral, darker darkens, brighter brightens.
  2. Assign it to the Detail Albedo slot and set tiling to 8–16x for typical environment use.
  3. Add a high-frequency detail normal for surface micro-bump.
  4. Mask the detail to recessed regions for a weathered-cracks look.
material.SetTexture("_DetailAlbedoMap", grungeTex); material.SetTextureScale("_DetailAlbedoMap", new Vector2(12f, 12f)); material.SetFloat("_DetailAlbedoStrength", 0.6f);

Tips & gotchas

  • Neutral grey is the safe default — anything darker or brighter shifts the base palette.
  • Prime-ish tiling values (7, 11, 13) hide the repeat better than 8 or 16.
  • Keep one of the two normals dominant — Reoriented Normal Mapping is stable but reads noisy if both maps are heavy.
  • Cost is two extra texture samples, so mask aggressively when many materials share the screen.
Last updated on