BD Unpack Bundle
Open the suitcase — pulling a MESH_BUNDLE back into its parts
- bundle
- mesh
- color_field
- diffuse
- normal
- metallic
- roughness
- alpha
- name
- status
The BrainDead mesh pipeline has a "keep it together" philosophy: BD Pack Bundle glues a mesh, its color field, its PBR textures, and its name into one MESH_BUNDLE container so you can cache it or ship it around the graph as a single connection. This node is the un-zip. BD Unpack Bundle takes that bundle and splits it back into every individual piece, as separate sockets, so you can process any one of them without dragging the whole bundle along.
You'll reach for it when you've cached a high-poly mesh (via BD Cache Bundle), and now you want to do actual work on it - decimate it, re-UV it, re-bake a texture - before re-packing for export. A bundle is a great way to freeze an expensive result; it's a terrible shape to feed into a node that only wants one thing. This is the valve in between.
What comes out
The bundle input (a MESH_BUNDLE) expands into:
mesh- the TRIMESH geometry, with its material and UVs intact if the bundle had them.color_field- the deferred color data, ready to reapply to a processed mesh viaBD Apply Color Field.diffuse,normal,metallic,roughness,alpha- the PBR textures as IMAGE tensors. Not all bundles have all five; any that are missing come out as empty connections, which thestatusoutput helpfully summarizes ("2 textures", "3 textures" and so on).name- the bundle's name string, so your downstream save nodes can keep filenames consistent.status- a one-line digest of what was unpacked: vertex/face counts, whether a material is present, how many textures survived.
The typical loop is: unpack → process one piece (decimate the mesh, fix the normal map) → re-pack → export. The color field and textures come out separately precisely so you can hand them off without the geometry and vice versa.
Installation
Standard BrainDead pack install - ComfyUI Manager (search "BrainDead") or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/BizaNator/ComfyUI-BrainDead
cd ComfyUI-BrainDead
pip install -r requirements.txt
No models, no heavy dependencies for this node; it just needs the trimesh and numpy/torch stack the pack already brings in.
Common issues
- "ERROR: No bundle" - the input socket is empty or wired from something that didn't produce a bundle. Check the Pack/Cache node upstream; this node does no work on nothing.
- Some textures come out missing - that's the bundle's contents, not a failure here. Bundles only hold what was packed into them. If you expected a normal map and there isn't one, the fault is upstream at pack time.
- Alpha looks wrong - note that textures go through a numpy conversion where 4-channel images get their alpha channel dropped for the IMAGE outputs (
alphais its own separate output). If you need the alpha within an RGBA texture, keep it as its own channel instead of expecting it embedded.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| bundle | MESH_BUNDLE | — |
Outputs (9)
| Name | Type | Description |
|---|---|---|
| mesh | TRIMESH | — |
| color_field | COLOR_FIELD | — |
| diffuse | IMAGE | — |
| normal | IMAGE | — |
| metallic | IMAGE | — |
| roughness | IMAGE | — |
| alpha | IMAGE | — |
| name | STRING | — |
| status | STRING | — |