Remesh Geogram Anisotropic (backend)
Geogram anisotropic remesh — triangles that stretch along the shape's curves
- trimesh
- remeshed_mesh
- info
Uniform remeshing gives you the same triangle everywhere. Anisotropic remeshing does the smart thing instead: it stretches triangles to match the surface's own curvature - long, thin triangles along creases and ridges, round fat ones across flat regions. The payoff is efficiency: the same number of triangles captures the shape far more faithfully, because they're spent where the shape actually changes. If you're optimizing a mesh for a render or a sculpt where polygon budget matters, this is the Geogram mode you want.
It's the geogram_anisotropic backend of the main Remesh node, dev-only in the schema like all of them - you pick it from the dropdown.
How it works
Same machinery as GeogramSmooth - sample points on the surface, Lloyd-relax them, Newton-optimize, re-triangulate - but the relaxation works on a metric instead of plain Euclidean distance. The metric is built from the surface's principal curvature directions: along a sharp crease, distances shrink (so samples pack tightly and triangles go long); across a flat area, distances stay normal. That single metric change is the whole trick, and it's controlled by exactly one meaningful number.
Inputs and outputs
- trimesh (TRIMESH) - the mesh to remesh.
- nb_points_aniso (default 5000) - target vertex count. Your resolution budget; 0 keeps the input count.
- anisotropy (default 0.04) - the strength of the anisotropy, and the knob you'll actually tune. Lower = more stretched, more directionally efficient triangles; higher = closer to uniform. The tooltip's "typical 0.02–0.1" range is right - start at 0.04 and go down if the result feels under-spent on detail.
Outputs: remeshed_mesh (TRIMESH) and info (STRING) with counts.
Installing
ComfyUI Manager → GeometryPack, or:
cd ComfyUI/custom_nodes
git clone https://github.com/PozzettiAndrea/ComfyUI-GeometryPack.git
cd ComfyUI-GeometryPack
pip install -r requirements.txt --upgrade
python install.py
Restart after. Geogram lives in the pack's isolated comfy-env environment, built by install.py.
Troubleshooting
- Looks almost uniform - anisotropy is too high (too close to 1.0-ish behavior). Drop it into the 0.02–0.04 band.
- Spiky/artifacting along creases - anisotropy too aggressive for the input's noise. Nudge it back up.
- Vertex budget spent wrong - anisotropic methods are only as good as the curvature estimate. Noisy meshes produce noisy curvature; smooth the input first.
- Stale-workflow validation errors are the pack-wide gotcha - if the Remesh node throws on a saved graph, delete and re-add it, re-pick
geogram_anisotropic.
Worth knowing before you commit: anisotropic outputs are a little less friendly to naive UV unwraps (long thin triangles can make a texture-stretch mess), so if the mesh is headed to texturing, weigh that against the vertex savings. For sculpting and displacement work it's genuinely the better spend.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| trimesh | TRIMESH | — | |
| nb_points_aniso | INT | 50000–1000000 | Target number of output vertices. |
| anisotropy | FLOAT | 0.0400.005–0.5 | Anisotropy factor. Lower = more anisotropic. Typical: 0.02-0.1. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| remeshed_mesh | TRIMESH | — |
| info | STRING | — |