Three Group
How you get more than one object into a scene
- object_1
- object_2
- object_3
- object_4
- object_5
- object_6
- object_7
- object_8
- group
Every scene needs a place to hold its stuff, and Three Scene only takes one object on its root socket. So where does the second mesh go? Through Three Group. It gathers up to eight objects under one parent, and that parent is what you wire into the scene - or into another group. It's the node that turns "a box" into "a scene," and it's in almost every Three workflow the moment you add a second object.
Think of it as a folder in the scene graph, and the folder is itself an object. Add a floor, a product, a light and a camera rig as object_1 through object_8 (slots fill in any order), and the group output behaves like a single THREE_OBJECT you can move, hide, or animate as one unit. Moving the group moves everything in it - that's how you pose a whole set of meshes together instead of nudging them one by one. Nested groups extend the count: a group with eight slots can hold another group with eight of its own, so "up to eight" is a soft limit in practice.
The two widgets are about bookkeeping. name is a label carried into the scene graph - it's how custom code finds objects by name, so name a group set or props if anything downstream needs to locate it. visible hides or shows the whole group and everything inside it at once, which is the cheap way to drop a whole prop set out of a frame.
The way groups make animation practical is worth knowing. Three Animate Transform, Three Custom Update and the rest take a THREE_OBJECT and wrap it - so you animate the group to spin the whole product-and-pedestal assembly as one, and animate individual meshes separately for the parts that move on their own. Grouping is also where the Three Grid Helper usually lives, so you can hide the guide grid in one click when you switch from framing to final.
Because it's just a THREE_OBJECT output, a group is also how the other terminal nodes stay fed: it plugs into Three Scene's root, into another group's slot, or into an animator that wants the whole assembly. If a workflow of yours keeps refusing a second wire into the scene, this is the node you were reaching for.
Installing it
Part of WAS Node Suite v3 - ComfyUI Manager search WAS Node Suite v3, or:
cd ComfyUI/custom_nodes
git clone https://github.com/WASasquatch/was-node-suite-comfyui.git
Restart; needs ComfyUI 0.14.0+ / Python 3.10+. Nothing installs or downloads. If the Three menu's missing, set features.threejs: true in <ComfyUI user dir>/was-node-suite/config.yaml.
If it looks wrong
An empty scene after adding a group means you wired the group to the scene but never dropped any objects into the group's slots - check the group node, not the scene. And if hiding one object hides the whole world, you've put everything in one group and flipped visible; split into nested groups for finer control.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| name | STRING | Group | Label carried into the scene graph, such as 'set' or 'props'. Custom code finds a group by it. |
| visible | BOOLEAN | true | `true` draws the group and everything in it; `false` hides all of it at once. |
| object_1opt | THREE_OBJECT | A mesh, light, helper or another group to gather. Slots may be filled in any order. | |
| object_2opt | THREE_OBJECT | A mesh, light, helper or another group to gather. Slots may be filled in any order. | |
| object_3opt | THREE_OBJECT | A mesh, light, helper or another group to gather. Slots may be filled in any order. | |
| object_4opt | THREE_OBJECT | A mesh, light, helper or another group to gather. Slots may be filled in any order. | |
| object_5opt | THREE_OBJECT | A mesh, light, helper or another group to gather. Slots may be filled in any order. | |
| object_6opt | THREE_OBJECT | A mesh, light, helper or another group to gather. Slots may be filled in any order. | |
| object_7opt | THREE_OBJECT | A mesh, light, helper or another group to gather. Slots may be filled in any order. | |
| object_8opt | THREE_OBJECT | A mesh, light, helper or another group to gather. Slots may be filled in any order. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| group | THREE_OBJECT | The parent holding everything wired in, for Three Scene or another group. |