Nodes/ComfyUI-TextureAlchemy/Wear & Edge Damage Generator
ComfyUI Node

Wear & Edge Damage Generator

The node that only works if you feed it the right maps

By amtarr·Created 9 months ago·Updated 4 months ago· 58
Wear & Edge Damage Generator
  • albedo
  • curvature
  • ao
  • worn_albedo
  • wear_mask
wear_strength0.50
edge_wear0.70
dirt_strength0.30

New-looking materials are the easiest way to tell that something is game art rather than a real object. Real things accumulate wear: edges get knocked and scraped, crevices collect dirt, and sunlight and handling fade the high points. Wear & Edge Damage Generator is the pack's tool for that weathering pass - it takes an albedo and darkens the edges (wear) and the crevices (dirt) so a material reads as used instead of fresh off the production line.

Here's the catch you need to hear before anything else: this node does almost nothing if you feed it only an albedo. Its two signature effects both depend on the optional inputs - edge wear needs a curvature map, and dirt needs an ao map. Without either connected, the wear mask is computed as empty, the albedo passes through essentially unchanged, and you'll sit there wondering why "wear_strength: 0.7" isn't doing anything. The tooltips admit as much ("needs curvature or height", "needs AO"), but it's easy to miss when you're staring at a graph. This is a node that expects to be the last step of a chain, not a standalone effect.

How it works

The node builds a wear mask from two ingredients:

  • curvature (optional) - highlights edges and creases. Added to the mask weighted by edge_wear, this produces the "rubbed on the edges" damage.
  • ao (optional) - inverted, so dark cavities become dirt. Weighted by dirt_strength.

The combined mask is scaled by wear_strength, then the albedo is multiplied by (1 − mask × 0.5), i.e. worn areas darken up to about half. It's a darken-only weathering - it won't repaint or add texture, just knock the brightness down where the mask says to.

Outputs: worn_albedo (the weathered material) and wear_mask (a grayscale map of where wear landed, handy for previewing or for driving other effects).

The workflow it's meant for

The pack's own docs show the pairing: run your normal or height map through the Curvature Map Generator (same pack, Effects category), feed that into curvature, and your AO into ao. Then dial edge_wear to 0.7-ish for scuffed corners, dirt_strength to 0.3-ish for grime in the joints, and keep wear_strength moderate - it multiplies everything, so too much makes the whole surface look smoked rather than worn.

Inputs

  • albedo - the material to weather.
  • wear_strength (0–1, default 0.5) - global multiplier on the whole wear mask.
  • edge_wear (0–1, default 0.7) - how strongly curvature drives edge damage.
  • dirt_strength (0–1, default 0.3) - how strongly inverted AO drives crevice dirt.
  • curvature / ao (optional) - the maps that actually make it work.

Installing it

WearGenerator is part of ComfyUI-TextureAlchemy. ComfyUI Manager → search "Texture Alchemy" → install → restart. Manual:

cd ComfyUI/custom_nodes
git clone https://github.com/amtarr/ComfyUI-TextureAlchemy
# restart ComfyUI

No extra pip dependencies, no model downloads - pure PyTorch. Under Add Node → Texture Alchemist → Effects. (The README's copy-the-ComfyUI_PBR_MaterialProcessor-folder note is a pre-rebrand leftover - use Manager or git clone.)

The honest summary

As a one-node weather machine it's lightweight and darkens rather than adds - if you want full damage (scratches, chips, repainted patches), you'll layer other tools on top. But for the 80% case - a painted-metal or masonry albedo that just needs to look like it's seen some use - feeding it a curvature map and an AO is a fast, free, and surprisingly convincing pass. Just remember the dependency, because "why isn't this doing anything" is the number one support question this node generates.

CategoryTexture Alchemist/Effects

Inputs (6)

NameTypeDefaultDescription
albedoIMAGE
wear_strengthFLOAT0.500–1Overall wear intensity
edge_wearFLOAT0.700–1Wear on edges (needs curvature or height)
dirt_strengthFLOAT0.300–1Dirt accumulation in crevices
curvatureoptIMAGE
aooptIMAGE

Outputs (2)

NameTypeDescription
worn_albedoIMAGE
wear_maskIMAGE