Hunyuan 3D 2.1 Camera Config
Six cameras, one rig — and you control every angle with a comma-separated string
- camera_config
Hy3D21CameraConfig is the little node that decides how your object gets looked at. It defines the camera rig - a set of azimuth angles, elevation angles, and per-view weights - that Hy3DMultiViewsGenerator uses to render the painted views of your mesh. No cameras configured, no views generated. It's one of those nodes that looks trivial and quietly controls a huge chunk of the final texture quality.
The output is a single HY3D21CAMERA object that feeds straight into the multiview generator (and passes through it unchanged). The inputs are four comma-separated fields:
The inputs that matter
- camera_azimuths - the compass position of each camera around the object, in degrees. The default is
0, 90, 180, 270, 0, 180. Azimuth 0 is the front, 90 is the right side, 180 the back, 270 the left. - camera_elevations - the height of each camera. Default
0, 0, 0, 0, 90, -90. Zero is eye-level; positive looks down from above, negative looks up from below. The default rig is four side views plus one top-down and one bottom-up view. - view_weights - how much each view's color contributes to the final texture. Default
1, 0.1, 0.5, 0.1, 0.05, 0.05. The front view (index 0) carries the most weight because that's usually where the detail is; the top and bottom views barely contribute because they cover mostly hidden surfaces. This is the input that actually changes look - crank a view's weight if it's the one showing your object's best angle. - ortho_scale (default 1.0, range 0.1–2.0) - the zoom of the orthographic projection. Below 1 zooms in, above 1 zooms out. Only touch it if your object is overflowing or shrinking inside the render frame.
How it works
The node parses the three strings (stripping spaces, splitting on commas), packs them with ortho_scale into a camera config dict, and that dict travels through the whole painting pipeline. It's pure data plumbing - no models, no GPU. That's why it's one of the few nodes in this pack that runs instantly.
A practical note
You must keep all three lists the same length - one azimuth, one elevation, one weight per camera. The node won't validate that, so a mismatch means you get a rig that doesn't mean what you think it means. And because the defaults are the values every example workflow ships, don't change them until you've seen a result. The most common tweak people actually want: adding a second front-ish angle with decent weight when the front of the object is the money shot and the default rig smears it.
Install-wise, this node needs nothing special - it comes with the pack (git clone https://github.com/visualbruno/ComfyUI-Hunyuan3d-2-1, pip install -r requirements.txt). It's the rare node in this pack you can use while the heavy C++ extensions are still broken, which makes it a decent sanity check that your install works at all.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| camera_azimuths | STRING | 0, 90, 180, 270, 0, 180 | — |
| camera_elevations | STRING | 0, 0, 0, 0, 90, -90 | — |
| view_weights | STRING | 1, 0.1, 0.5, 0.1, 0.05, 0.05 | — |
| ortho_scale | FLOAT | 1.000.1–2 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| camera_config | HY3D21CAMERA | — |