Nodes/BrainDead Nodes/BD Mesh Preview (Thumbnails)
ComfyUI Node

BD Mesh Preview (Thumbnails)

Thumbnails for your 3D parts without leaving ComfyUI — the DAM preview that needs no Blender

By BizaNator·Created 8 months ago·Updated 3 days ago· 15
BD Mesh Preview (Thumbnails)
  • meshes
  • mesh
  • grid
  • thumbnails
  • status
tile_size256
columns0
shadingtextured
backgrounddark
azimuth35
elevation20
labels
views1

BD Mesh Preview renders meshes to a labeled contact-sheet image - one grid showing all your parts at a glance - plus a per-mesh image batch. If you've ever decomposed a character into ten parts with CubePart and wanted a single sheet to review, or needed a thumbnail for a digital asset manager without opening Blender, this is the node.

The rendering is done headlessly with pyrender on GPU (EGL offscreen), so it works on a server with no display - the pack notes it's verified stable alongside torch CUDA. That detail matters more than it sounds: it means this isn't a "run it on your workstation and screenshot" preview, it's a real render node that produces image outputs the rest of your graph can consume.

The inputs that matter

  • meshes - a TRIMESH_LIST, which is what BD CubePart Segment outputs as its parts. This is the headline use: every part becomes a tile in the grid, in order.
  • labels - newline-separated names per mesh. CubePart also outputs part_names; wire it here and every tile gets a caption. Without labels you get unlabeled tiles, which is fine for eyeballing but useless for review notes.
  • shading - how each part is rendered. textured (default) renders the real texture atlas and falls back to vertex_colors then solid when there's no texture; then vertex_colors, part_colors, normals, solid. If your texture-free mesh shows up plain white, that's the fallback chain working as designed.
  • views - for a single mesh only: render this many angles as a turnaround into the grid (4 = front/right/back/left). Ignored for a mesh list. This is your "is this object complete?" check on one model.
  • columns, tile_size - grid layout (0 columns = auto square-ish). azimuth/elevation set the camera. background is dark/light.

Outputs

grid - the contact sheet as an IMAGE (shown inline, saveable, wireable). thumbnails - the individual renders as an IMAGE batch, so you could fan them out to individual save nodes or a grid node of your own. status for diagnostics.

The honest note

This is the "texture-look thumbnail for a DAM, no Blender needed" node - that's the pack's own framing and it's accurate. It's not a replacement for BD Mesh Inspector (interactive viewer, channel switching) or for a real DCC render; it's the quick, scriptable, asset-management-grade preview. If you need to inspect a mesh in detail, use the Inspector; if you need a sheet of thumbnails to file away or share, use this.

Installing

Standard BrainDead install - ComfyUI Manager search "BrainDead" or clone + pip install -r requirements.txt, restart. It needs pyrender and trimesh, and on a headless box the EGL platform must be present (the node sets PYOPENGL_PLATFORM=egl before importing, but your system still needs an EGL-capable GL library - if you hit a blank preview, check that libegl and libgl1 are installed). All V3 API, so keep ComfyUI current.

The workflow that makes it click: CubePart parts + part_names in, a labeled grid out, straight into a save node with a context-suffixed filename. Ten parts, one file, zero Blender.

Category🧠BrainDead/Mesh

Inputs (10)

NameTypeDefaultDescription
tile_sizeINT25664–1024
columnsINT00–16Grid columns. 0 = auto (square-ish).
shadingCOMBOtextured5 options: textured, vertex_colors, part_colors, normals, solid
backgroundCOMBOdark3 options: dark, white, transparent
azimuthFLOAT35-180–180
elevationFLOAT20-89–89
meshesoptTRIMESH_LISTList of meshes (e.g. CubePart `parts`).
meshoptTRIMESH
labelsoptSTRINGOptional per-mesh labels (newline-separated), e.g. CubePart `part_names`.
viewsoptINT11–8For a SINGLE mesh: render this many angles (turnaround) into the grid — e.g. 4 = front/right/back/left. 1 = single view. Ignored for a mesh list.

Outputs (3)

NameTypeDescription
gridIMAGE
thumbnailsIMAGE
statusSTRING