Nodes/ComfyUI Lackluster Nodes/Lackluster-Shot Queue (v2 3D Widget)
ComfyUI Node

Lackluster-Shot Queue (v2 3D Widget)

Queue up to 10 shots from an interactive 3D scene

By LacklusterOpsec·Created 5 months ago·Updated 17 days ago· 1
Lackluster-Shot Queue (v2 3D Widget)
  • image
  • prompts
  • prompt_text
  • camera_info
  • queue_count
horizontal_angle0
vertical_angle0
zoom5.0
camera_viewfalse
custom_prefix<sks>
sequence_json[]

This is the pack's "set up a whole shoot, then run it" node. Where the plain camera nodes produce one prompt per run, Lackluster-Shot Queue is built around a queue: pick camera angles, add them up to a maximum of ten shots, then let ComfyUI execute each one sequentially. It's the same angle-to-prompt engine as the rest of the family, wrapped in a workflow that finally matches how you actually plan a shoot.

How it works

The plan is: set the angle with horizontal_angle (0–360°), vertical_angle (-30° to 60°) and zoom (0 = wide, 10 = close-up), and build the shot list. The list lives in sequence_json, an array of {azimuth, elevation, distance} objects - and if you're using the interactive 3D widget, that's what you're editing when you drag the camera around and add shots. Flip camera_view on to get the 3D scene, optionally drop an image in as context.

On each run the node converts every queued shot into a prompt (custom_prefix, default <sks>, prepended) and emits:

  • prompts (STRING list) - one prompt per shot, triggering sequential execution
  • prompt_text (STRING) - all shots joined for review
  • camera_info (LOAD_3D_CAMERA list) - matching 3D metadata per shot
  • queue_count (INT) - how many shots are queued

The name says "v2 3D Widget" in your menu, which is where the confusion starts - see below.

Wait - which Shot Queue is which?

This pack ships two nodes with near-identical names and you will mix them up at least once.

  • Lackluster-Shot Queue (v2 3D Widget) - this one. Raw angles + interactive 3D widget + sequence_json. You build the queue yourself, visually or by hand.
  • Lackluster-Shot Queue V2 - the other one (LacklusterShotQueueNodeV2). Preset-based: 15 named shot presets (front close-up, low-angle hero, dutch angle…) and add_to_queue / run_queue / clear_queue toggle buttons. No 3D scene.

Different files, different inputs. The display names are genuinely terrible for telling them apart - check whether the node has a camera_preset input (that's the V2) or horizontal_angle sliders (that's this one).

Gotchas

  • If sequence_json is empty, it falls back to a single default shot - confirm queue_count is what you expect before you queue a long run.
  • The interactive widget is a compiled Vue/three.js app the repo doesn't ship built, so on a plain clone the 3D scene may not render. The queue logic still works - you can hand-edit sequence_json either way.

Install: ComfyUI Manager → "ComfyUI Lackluster Nodes" (deps: requests + numpy only, no models).

CategoryLackluster/Camera

Inputs (7)

NameTypeDefaultDescription
horizontal_angleINT00–360Camera azimuth angle (0-360°)
vertical_angleINT0-30–60Camera elevation angle (-30° to 60°)
zoomFLOAT5.00–10Camera distance (0=wide, 10=close-up)
camera_viewBOOLEANfalseToggle camera perspective preview
custom_prefixSTRING<sks>Prefix appended to each prompt
sequence_jsonoptSTRING[]JSON array of queued shots
imageoptIMAGEOptional input image to display in 3D scene

Outputs (4)

NameTypeDescription
promptsSTRING
prompt_textSTRING
camera_infoLOAD_3D_CAMERA
queue_countINT