Documentation / Node reference / geo nodes
geo/Remesh
Rebuilds a mesh with evenly sized triangles.
Topology
Splits edges that are too long, collapses those that are too short, flips for better valence and smooths, until the triangles are about the target edge length and roughly equilateral. Reach for it when a mesh has to be worked on rather than just drawn: simulation, deformation, scattering and quad remeshing all behave far better on even triangles than on the long slivers a boolean or an import leaves behind.
A NURBS surface and an SDF field can go in DIRECTLY, with no triangulation node in between. Both are their own projection target: the node meshes them internally and then snaps every vertex it creates onto the real surface, so the result carries detail no fixed tessellation had. Anything else than a triangle mesh passes through untouched.
Curvature-adaptive mode varies the target edge length with how hard the surface bends, which spends triangles where the shape needs them.
Parameters
| Name | Type | What it does |
|---|---|---|
| iterations | UInt8 | How many times the whole split/collapse/flip/smooth cycle runs. More iterations means more even triangles and a longer cook. |
| featureAngle | Float | Dihedral angle in degrees above which a shared edge counts as a crease and is protected: its vertices are never smoothed away, so a box keeps its corners. 0 protects nothing. |
| preserveGroup | String | Name of an input POINT group to pin. Its vertices stay exactly where they are, and edges between two of them are never split, collapsed or flipped. |
| weld | Bool | Merge coincident vertices before remeshing, so a seamed primitive (a UV sphere, an imported mesh split along a seam) is treated as watertight. Off keeps the input's exact vertex identity. |
| projectToSurface | Bool | Snap new and smoothed vertices back onto the input surface, so a curved mesh keeps its shape instead of deflating. For a NURBS or SDF input the target is the true surface, not a tessellation of it. Off is faster and shrinks curves. |
| curvatureAdaptive | Bool | Size the triangles by curvature instead of uniformly: dense where the surface bends, coarse where it is flat. Replaces the target edge length with the tolerance and the two clamps below. |
| targetEdgeLength | Float | The edge length every triangle aims for. |
| tolerance | Float | Adaptive mode: how far the mesh may deviate from the curved surface between vertices. Smaller means denser everywhere. |
| minEdgeLength | Float | Adaptive mode: the shortest edge curvature may ask for, which is what bounds the cost on a highly curved surface. |
| maxEdgeLength | Float | Adaptive mode: the longest edge allowed on the flat parts. |
| computeNormals | Bool | Compute normals on the output. On by default: remeshing rebuilds the point set from scratch, so there is nothing to carry the input's normals over to, and without this the result shades black. |
| allocator | UInt8 TEMP · POOL · FLAT_POOL | Which allocator backs the scratch mesh. A pool clears at the end of the cook, temp at the end of the frame. Remeshing allocates a lot, so a pool is usually the right one. |
See also
- geo/Decimate
- geo/Fuse
- geo/Triangulate
This page is generated from the engine, so it describes the release you can download. The same text is in the editor's Help panel next to the node itself.