Dream Little Planet
Turn a 360° panorama into a tiny floating planet
- panorama
- little_planet
- planet_mask
You've seen the look: a 360° scene collapsed into a small round world floating on black, like a snow globe you're orbiting. That's the little-planet effect, and Dream Little Planet (DreamLittlePlanet) produces it from any equirectangular panorama with one node. It's genuinely one of the most shareable outputs you can get out of a 360 image - it reads as an abstract, dreamy composition even to people who have no idea what an equirect is. If you're making thumbnails or social posts from panorama work, this is the node you'll reach for.
How it works
It's a stereographic projection from the north pole of your panorama's sphere. Roughly: each output pixel's distance from the image center maps to a latitude on the sphere (near the center = the top of the panorama, the zenith), and its angle around the center maps to longitude. The math (latitude = π/2 − 2·atan(radius/zoom)) is what makes it look like a planet rather than a fisheye mess - and like everything in this pack, it's deterministic, CPU-only numpy. Same source image, same planet, every time.
The inputs that matter
- size (256…4096, default 1024, step 64) - square output. 1024 is a solid default; go higher only if your source is high-res enough to survive the compression toward the planet's center.
- rotation (−180…180) - spins the planet so a different longitude faces you.
- zoom (0.25…3, default 1) - pushes the planet closer or farther; lower zoom fills more of the frame.
- background - what fills the area outside the planet disc:
transparent black(a clean black disc, good for compositing),zenith color(fills the void with the average color of the panorama's top rows, so the planet blends into its sky), oredge stretch(lets the sampling smear the source's edges beyond the disc).
The two outputs are the little_planet IMAGE and a planet_mask MASK - a reusable circular mask that matches the planet exactly. That mask is the quiet killer feature: wire it into a compositing or masking node and you can drop the planet onto any backdrop without hand-drawing a circle.
Installing it
Part of the shared pack - ComfyUI Manager (search ComfyUI-Dream-Interpreter) or:
cd ComfyUI/custom_nodes
git clone https://github.com/gokayfem/ComfyUI-Dream-Interpreter.git
python -m pip install -r requirements.txt
Restart ComfyUI. numpy and Pillow are the whole dependency list; no models, no downloads. Look under panorama/dream toolkit.
Gotchas
The center of the planet is your panorama's zenith (the very top row), so whatever's up there becomes the planet's core - and the poles compress a lot of image into a little circle, so a low-res source will look soft in the middle no matter what you do. Upscale your panorama first if you care about the center. And pair it with the pack's Validate Dream Panorama and Repair Panorama Seam upstream - a broken seam or a non-2:1 image will show up on the planet's far side, right where people look.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| panorama | IMAGE | — | |
| size | INT | 1024256–4096 | — |
| rotation | FLOAT | 0-180–180 | — |
| zoom | FLOAT | 1.000.25–3 | — |
| background | COMBO | 3 options: transparent black, zenith color, edge stretch |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| little_planet | IMAGE | — |
| planet_mask | MASK | — |