Nodes/ComfyUI-Hunyuan3d-2-1/Hunyuan 3D 2.1 MultiViews Generator With MetaData
ComfyUI Node

Hunyuan 3D 2.1 MultiViews Generator With MetaData

The generator that saves its homework — views on disk, ready to upscale later

By visualbruno·Created about a year ago·Updated 5 days ago· 375
Hunyuan 3D 2.1 MultiViews Generator With MetaData
  • trimesh
  • camera_config
  • image
  • pipeline
  • albedo
  • mr
  • metadata
  • positions
  • normals
view_size512
steps10
guidance_scale3.0
texture_size1024
unwrap_meshtrue
seed0
output_name

Hy3DMultiViewsGenerator paints your mesh's views and forgets them the moment the run ends. Hy3D21MultiViewsGeneratorWithMetaData is the version with a memory: it does the same painting, but also writes every albedo and MR view as a PNG to ComfyUI/output/3D/<output_name>/ and saves a metadata record of what it did. That tiny difference unlocks the pack's best workflow - upscaling your views with a real upscaler (AuraSR, InvSR) and re-baking them for sharper textures, or resuming a texturing job days later without re-running diffusion.

How it works

It's the paint pipeline again - mesh + camera rig + source image in, painted views out - with one extra input, output_name, and one extra output, metadata (HY3D21METADATA). The extra code saves Albedo_0.png, Albedo_1.png, ... and MR_0.png, ... into output/3D/<output_name>/, then packs a metadata object with the mesh file name, the camera config, and the lists of saved files. Everything else - steps (10), guidance_scale (3.0), view_size (512), texture_size (1024), unwrap_mesh (true), seed - matches the plain generator exactly.

The workflow this unlocks

The Mesh_Texturing_With_MetaData example shows it, and the ..._Upscaled_With_Model variants push it further:

  1. Generate views with this node (saves PNGs + metadata).
  2. Upscale the PNGs with AuraSR or InvSR (or any upscaler - the views are just images now).
  3. Re-bake with Hy3DBakeMultiViewsWithMetaData, which detects the upscaled views, bakes, inpaints, and writes the final glb plus a meta_data.json.
  4. Later, reload everything with Hy3D21UseMultiViewsFromMetaData or generate LODs with the HighPoly-to-LowPoly node.

The metadata object is the glue - it's what lets the next node find the right files and camera config without you re-wiring anything.

The outputs

pipeline, albedo, mr, metadata are the ones you use; positions and normals are diagnostics as usual. metadata is what you didn't get from the plain node - wire it into Hy3DBakeMultiViewsWithMetaData and you're set.

Installing it

Same install as the rest of the paint pipeline - the C++ extensions (custom_rasterizer + mesh_inpaint_processor) are required because this runs the rasterizer to render views:

cd ComfyUI/custom_nodes
git clone https://github.com/visualbruno/ComfyUI-Hunyuan3d-2-1
cd ComfyUI-Hunyuan3d-2-1
pip install -r requirements.txt
# plus the wheels under hy3dpaint/custom_rasterizer/dist and hy3dpaint/DifferentiableRenderer/dist

Common issues

If output_name contains a path separator or illegal characters, the save dies - keep it a plain folder name. And note this node saves views but not the final mesh; the bake node that follows is what writes the glb. If you only run this node, you get images and metadata with no textured model - that's expected, not a bug.

CategoryHunyuan3D21Wrapper

Inputs (10)

NameTypeDefaultDescription
trimeshTRIMESH
camera_configHY3D21CAMERA
view_sizeINT512512–1024
imageIMAGEImage to generate mesh from
stepsINT101–100Number of steps
guidance_scaleFLOAT3.01–10Guidance scale
texture_sizeINT1024512–4096
unwrap_meshBOOLEANtrue
seedINT00–18446744073709550000
output_nameSTRING

Outputs (6)

NameTypeDescription
pipelineHY3DPIPELINE
albedoIMAGE
mrIMAGE
metadataHY3D21METADATA
positionsIMAGE
normalsIMAGE