Orbit Lists to Orbit Poses JK๐
A tiny translator between two camera-skeleton dialects
- orbit_lists
- orbit_camposes
3D camera data in ComfyUI speaks two dialects, and this node is the interpreter between them. OrbitLists to OrbitPoses JK takes a camera track in "orbit list" format and converts it to "camera pose" format. Same information, different order - and different downstream nodes expect different orders, which is the entire problem it solves.
The two formats
- Track list format (what this node consumes):
[azimuth, elevation, radius, center X, center Y, center Z]- camera angle first. - Camera pose format (what this node outputs):
[radius, elevation, azimuth, center X, center Y, center Z]- distance first.
Everything is a comma-separated list of floats, grouped per camera position. The node takes the single orbit_lists input and emits the converted orbit_camposes output. Nothing is computed or reinterpreted - the values are just reordered. If you've got azimuth and radius swapped in a 3D generation and the camera orbit looks like it's on a different planet, this conversion is the usual suspect for the fix.
When you'd actually need it
These camera tracks exist because the pack's 3D side - the img2mesh workflows, the Hy3D and MV Adapter mult-view sampling, the Orbit Poses JK generator node - all feed camera trajectories to model samplers, and different parts of that chain expect different orderings. The most common real-world trigger: you built a custom orbit in one tool (or saved it from the Adv 3D Viewer), and the node that consumes it wants the other format. Drop this converter in the middle and the wire colors stop lying to you.
It's also genuinely useful for debugging. Convert a track and eyeball the numbers - if the "radius" column suddenly looks like your old "azimuth" column, you know exactly where the mismatch was.
Install
The whole pack installs together:
cd ComfyUI/custom_nodes
git clone https://github.com/jakechai/ComfyUI-JakeUpgrade
pip install -r requirements.txt
Restart and it's under the pack's 3D section, next to its two siblings: Orbit Poses JK (the generator) and OrbitPoses to OrbitLists JK (the reverse conversion). No models, no downloads - this is pure list reordering. The only "gotcha" is expecting it to change values when it won't: it changes order, not numbers. If your camera orbit is wrong, check the source data first.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| orbit_lists | ORBIT_CAMPOSES | Input track list format: [azimuth, elevation, radius, center X, center Y, center Z]. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| orbit_camposes | ORBIT_CAMPOSES | โ |