Nodes/ComfyUI-TD/Hy3DtoTD
ComfyUI Node

Hy3DtoTD

Stream Hunyuan3D models into TouchDesigner as point clouds

By JiSenHua·Created 2 years ago·Updated 9 days ago· 164
Hy3DtoTD
  • trimesh
  • mesh
    broadcastfalse

    Hy3DtoTD is the node that gets Tencent's Hunyuan3D output into TouchDesigner. It takes the GLB-style mesh produced by ComfyUI-Hunyuan3DWrapper (kijai's wrapper), converts it to a colored point cloud, and streams it over WebSocket, where the ComfyUI2TD.tox component parses it into a point-cloud CHOP. It's the sibling of Comfy3DPacktoTD, but wired specifically for the Hunyuan3DWrapper path.

    Hunyuan3D is Tencent's open 3D generation line - the KB's Tencent panel tracks it as the release that took the open 3D asset niche in 2025 - and with a single-image-to-3D pipeline feeding this node you get a realtime loop: drop in a reference, out comes a point cloud in TD you can orbit, displace, and feed into visuals. Like every 3D node in this pack, remember the output is points, not a shaded mesh - the faces are stripped and you get vertices plus colors.

    How it works

    The node accepts two socket types - trimesh or mesh - because kijai's wrapper has migrated its model workflows to emit trimesh objects, while other paths still hand out ComfyUI MESH objects. Connect exactly one; the node errors if you plug in both. On the trimesh path it concatenates scene geometry, fixes normals, and extracts vertices plus vertex colors, baking color from the UV texture if the mesh only has texture. On the MESH path it extracts vertices and colors directly. Everything is packed into a binary PLY (position + RGBA) and shipped over the WebSocket for the tox to parse.

    The inputs

    An output node - the point cloud materializes in TD.

    • trimesh - optional TRIMESH socket, from the current Hunyuan3DWrapper outputs.
    • mesh - optional MESH socket, for the older object type.
    • broadcast - required, off by default (current client only).

    Install

    Pack first:

    cd ComfyUI/custom_nodes
    git clone https://github.com/JiSenHua/ComfyUI-TD.git
    

    (or ComfyUI Manager, search ComfyUI-TD). The real dependency is ComfyUI-Hunyuan3DWrapper - a heavy install with sizable models, which is why the README points cloud-weary users at a hosted image. You'll also want the ComfyUI2TD.tox component (v5.1.x+) and, per the README, ComfyUI_essentials installed to avoid errors when running the pack's preset workflows.

    Gotchas

    Three things to get right up front. First, only connect one input - both plugged in is an explicit error, and neither is also an error, so it's a strict either/or. Second, the wrapper changed its output format to trimesh, so if you're on an older wrapper and your workflow was built around MESH, expect the wiring to differ - and don't confuse this node's MESH path with 3D-Pack's MESH, they're not interchangeable (that's the exact trap the README warns about). Third, this is the Hunyuan3D Wrapper node, not the 3D-Pack one - if your model came from 3D-Pack, use Comfy3DPacktoTD instead.

    CategoryTouchDesigner

    Inputs (3)

    NameTypeDefaultDescription
    broadcastBOOLEANfalse
    trimeshoptTRIMESH
    meshoptMESH

    Outputs (0)

    No outputs