Nodes/ComfyUI-DiT360/360° Viewer
ComfyUI Node

360° Viewer

Actually look around your panorama before you save it

By cedarconnor·Created 10 months ago·Updated 9 months ago· 3
360° Viewer
  • images
    max_resolution4096

    The worst part of generating a 360° panorama is that it doesn't look like anything until you unwrap it somewhere else. In ComfyUI's default preview it's just a stretched rectangle with the interesting stuff squeezed toward the middle. Equirect360Viewer is the payoff node: it renders your 2:1 equirectangular image in an actual Three.js viewer inside the ComfyUI interface, so you can drag to look around, scroll to zoom, and check whether the scene holds together before you bother saving it.

    It's an output node - it takes an IMAGE and returns nothing, but pops the interactive viewer in the UI. It's the last stop in the pack's canonical workflow (360° Empty Latent → 360° KSampler → 360° VAE Decode → 360° Edge Blender → this), and you can hang it off the same image wire as a Save Image node without stealing anything from your final output.

    Only two inputs, and only one you'll actually touch:

    • images - the panorama, ideally 2:1.
    • max_resolution (default 4096) - the widest the preview temp file gets. This only affects the preview file, not your saved output, so resist the urge to crank it to 8192. 2048 is plenty to look around, and it spares your temp folder a chunky PNG.

    How it works is simple: it converts your tensor to an image, resizes down if needed while keeping the 2:1 ratio, validates the aspect ratio (and warns if you fed it something that isn't roughly 2:1), writes a temp PNG, and hands it to the Three.js viewer in the pack's web folder. Nothing clever, nothing destructive.

    Install

    ComfyUI Manager (search "ComfyUI-DiT360") or the manual route:

    cd ComfyUI/custom_nodes
    git clone https://github.com/cedarconnor/ComfyUI-DiT360
    cd ComfyUI-DiT360
    pip install -r requirements.txt
    

    Then restart ComfyUI. (Fun fact: the README's copy-paste block still says yourusername/ComfyUI-DiT360.git - that's a typo on their end. The real URL is above.)

    The one thing this node needs beyond the rest of the pack: Three.js is not bundled. If the viewer button does nothing, run python install.py inside the repo (it downloads Three.js into web/js/lib) and restart. That's the classic gotcha, and it's the only extra dependency in the whole pack.

    Troubleshooting

    • Viewer button does nothing → run install.py, restart ComfyUI.
    • Console warns about aspect ratio → your image isn't 2:1. Either a resize/upscale step broke the ratio or you're feeding the wrong image into the preview.
    • Panorama doesn't look seamless when you look around → that's a generation problem, not a viewer problem. Head back to the Edge Blender and the circular padding nodes.

    Honest take: this is the closest thing to a "wow" node in the pack, and the least fiddly. If you're generating equirectangular content for anything - game skyboxes, VR environments, HDRI lighting - you'll want it as the finishing check. If you're not, it's still the fastest way to see what a 360° render actually looks like, which is worth one run just for that.

    CategoryDiT360/preview

    Inputs (2)

    NameTypeDefaultDescription
    imagesIMAGEPanorama image(s) to preview in the 360° viewer.
    max_resolutionINT4096512–8192Max preview width. Recommended: 2048 for speed, 4096 for detail. Only affects the preview temp file (does not change saved output).

    Outputs (0)

    No outputs