Hy3D Camera Config
The camera ring that decides how your mesh gets seen (and painted)
- camera_config
When Hunyuan3D renders and paints your mesh, it does it from a ring of fixed camera positions around the object. Hy3DCameraConfig defines that ring. It's a pure config node - no model, no VRAM, no math beyond parsing a few comma-separated strings - and its one output (camera_config, HY3DCAMERA) plugs into Hy3DRenderMultiView, Hy3DSampleMultiView, and Hy3DBakeFromMultiview.
The default setup is six views: azimuths 0, 90, 180, 270, 0, 180 and elevations 0, 0, 0, 0, 90, -90 - four around the sides plus top and bottom. That's a good default and most people never change it.
Inputs (all comma-separated strings)
camera_azimuths- the side-to-side angle of each camera, in degrees (0–360). One entry per camera, comma-separated.camera_elevations- the up/down angle of each camera, in degrees. One entry per camera;-90is straight down,90straight up.view_weights- how much each view contributes to the paint stage. One float per camera. The defaults (1, 0.1, 0.5, 0.1, 0.05, 0.05) weight the front view highest and the poles lowest. In practice: the front view of an object is almost always the one you care most about, so it should dominate.camera_distance(default 1.45) - how far the cameras sit from the object.ortho_scale(default 1.2) - the scale of the orthographic projection. Leave it alone unless your object is clipping the frustum.
Output: camera_config → the camera_config socket on the three consumer nodes.
The gotcha that costs hours
The counts must line up. If you add a camera to camera_azimuths but forget it in camera_elevations or view_weights, you'll get a hard-to-read error or silently garbage bakes, because the three lists are zipped together. Keep them the same length, always.
The bigger gotcha: the same config must be wired to all three consumer nodes. Hy3DRenderMultiView renders the normal/position maps from the camera ring, Hy3DSampleMultiView paints the multi-view images from (effectively) the same ring, and Hy3DBakeFromMultiview back-projects the paint results using the camera pose. If you configure the cameras on the render node but leave the bake on defaults, the projection won't line up and your texture will come out smeared and misaligned. One Hy3DCameraConfig node, wired to all three.
When to actually edit it
Add views when the bake leaves holes (the inpaint pass can only do so much) - e.g. add 45 and -45 azimuths to catch the corners. Add a dedicated close-up of a detail-heavy face by giving that direction a higher weight. Drop views when memory or time is tight, since each view is another diffusion pass in the paint stage. For everything else, the six-view default is the right answer.
Inputs (5)
| 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 | — |
| camera_distance | FLOAT | 1.4500.1–10 | — |
| ortho_scale | FLOAT | 1.2000.1–10 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| camera_config | HY3DCAMERA | — |