Nodes/BrainDead Nodes/BD CuMesh Quad Remesh
ComfyUI Node

BD CuMesh Quad Remesh

Get actual quads out of a triangle soup

By BizaNator·Created 8 months ago·Updated 3 days ago· 15
BD CuMesh Quad Remesh
  • mesh
  • mesh
  • quad_obj_path
  • status
resolution512
band1.0
project_back0.9
preserve_sharp_edgestrue
sharp_angle30
filenamequad_mesh
name_prefix

If you've ever tried to subdivide, rig, or sculpt an AI-generated mesh, you know the pain: it's all triangles, and animation tools really, really want quads. BD CuMesh Quad Remesh is the BrainDead node that fixes that - a GPU dual-contouring remesh that hands you back true quad topology instead of a triangle pile. It's the natural next stop after BD CuMesh Simplify once the face count is sane.

One thing to understand up front: this node gives you two outputs and they're not the same thing. mesh is a triangulated TRIMESH for the ComfyUI pipeline (downstream BD nodes expect triangles), and quad_obj_path is a path to an OBJ file with genuine quad faces - that's the deliverable. It's the quad OBJ you drag into Blender for subdivision, rigging, or animation. Don't wire the TRIMESH output into a rigging tool and wonder where your quads went.

The dials that matter

  • resolution (512) - voxel grid resolution; higher = more quads, more detail, more VRAM. remesh_resolution in the Simplify node scales like resolution³, and this is the same deal.
  • band (1.0) - narrow-band width in voxel units around the surface. Leave it unless you're chasing artifacts.
  • project_back (0.9) - how hard the quad vertices snap back onto the original surface. 1.0 = faithful to the source shape, 0 = you keep only the voxel approximation. 0.9 is the sweet spot; drop it if the output looks mushy.
  • preserve_sharp_edges (on) with sharp_angle (30°) - the sharp-edge-aware dual contouring kernel. On a mechanical or hard-surface mesh, leaving this on is the difference between crisp edges and rounded blobs.
  • filename / name_prefix - naming for the quad OBJ (default quad_mesh), with optional subdirectory prefix like Project/Head.

Outputs: mesh (TRIMESH), quad_obj_path (STRING path), and status.

The cumesh caveat (same as its sibling)

This is a sibling of BD CuMesh Simplify and shares its two footguns. cumesh is not installed by the pack's requirements.txt - install it yourself with pip install cumesh (a compiled CUDA package). Without it the node returns ERROR: cumesh not installed. And like Simplify, it's geometry-only: vertex colors don't survive, so do your color passes before you quad-remesh, or accept a clean-colorless mesh and re-transfer.

Installing

ComfyUI Manager → search "BrainDead" → install, then pip install cumesh. Or:

cd ComfyUI/custom_nodes
git clone https://github.com/BizaNator/ComfyUI-BrainDead
cd ComfyUI-BrainDead
pip install -r requirements.txt
pip install cumesh

Restart ComfyUI after the clone.

Where people get burned

Mostly at resolution. A common workflow is: Pixal3D / TRELLIS2 mesh → BD CuMesh Simplify to ~5–50k faces → Quad Remesh for the riggable version. If that last step is slow or OOMs, back resolution down before you touch anything else. And when Blender complains about a "non-manifold" quad mesh, that's usually the project_back or a broken source mesh - run BD Mesh Repair upstream before remeshing, not after.

Category🧠BrainDead/Mesh

Inputs (8)

NameTypeDefaultDescription
meshTRIMESH
resolutionINT512128–2048Voxel grid resolution. Higher = more quads, more detail.
bandFLOAT1.00.5–4Narrow band width in voxel units around the surface.
project_backFLOAT0.90–1How much to snap quad vertices back to the original surface.
preserve_sharp_edgesBOOLEANtrueUse sharp-edge-aware dual contouring kernel.
sharp_angleFLOAT3010–90Dihedral angle threshold (degrees) for sharp edge detection.
filenameSTRINGquad_meshBase filename for the quad OBJ output.
name_prefixoptSTRINGOptional subdirectory prefix (e.g. 'Project/Head').

Outputs (3)

NameTypeDescription
meshTRIMESH
quad_obj_pathSTRING
statusSTRING