LuminousFlow | GlitchNodes
Light strands that follow your image's features
- image
- image
LuminousFlow is the prettiest node in GlitchNodes, and also the one that feels least like a glitch. It turns your image into flowing strands of light - thin luminous threads that trace the image's bright features, bend with them, and glow on a near-black background. The result is more "ethereal long-exposure photography" than "broken TV," which makes it the pack's curveball. If someone hands you a dark portrait and says "make it look like light painting," this is the node.
The mechanism is surprisingly elegant. The node converts the image to grayscale and treats brightness as a displacement field: each horizontal line of strands gets pushed sideways by the intensity map at that position, scaled by flow_intensity. So bright areas in the source pull the strands sideways and the strands literally follow the light. The strands are rasterized once, then colorized per column, and everything accumulates additively with a glow - that's why bright areas bloom into halos instead of flat lines. glow_intensity (up to 20) and glow_spread control how much bloom; darkness (default 0.01) keeps the background nearly black.
The inputs that matter
- line_spacing (2–50, default 8) - distance between strands. Low = dense, high = sparse, elegant filaments.
- line_thickness (1–5, default 1) - strand width. Keep it low; this effect is about thin light.
- flow_intensity (0.1–5, default 2) - how dramatically strands bend around bright areas. This is the personality knob.
- smoothing (0–5, default 1) - curve smoothing on the strands. Higher = more swirly and organic.
- glow_intensity (0.1–20, default 12) and glow_spread (0–12, default 7) - the bloom. Crank glow for a dreamy neon look.
- vibrancy (0.1–15, default 8) and contrast (0.1–10, default 4) - color saturation and light/dark separation before the strands are drawn.
Output is image (IMAGE) → PreviewImage/SaveImage, with batch support for animating the effect over frames.
Installing it
Part of the GlitchNodes pack:
cd ComfyUI/custom_nodes
git clone https://github.com/pxl-pshr/GlitchNodes
# restart ComfyUI
or ComfyUI Manager → Install Custom Nodes → search "GlitchNodes". Deps: numpy, torch, Pillow, opencv-python, scipy. No model downloads.
Gotchas
LuminousFlow is one of the easiest nodes in the pack to make ugly, because the defaults are tuned for drama - 12 glow at 8 vibrancy on a busy photo turns into a neon blob. Start by dropping glow_intensity to ~4 and vibrancy to ~4, and remember the effect reads best on images with clear bright features and a dark or simple background. Also, it's genuinely expensive: it builds a displacement field and rasterizes strands per frame in NumPy/OpenCV, so batch video runs can be slow - test one frame before committing to a 300-frame sequence. Pack disclaimer applies: "highly experimental and may break or even error."
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| line_spacing | INT | 82–50 | — |
| line_thickness | INT | 11–5 | — |
| flow_intensity | FLOAT | 2.00.1–5 | — |
| smoothing | FLOAT | 1.00–5 | — |
| glow_intensity | FLOAT | 12.00.1–20 | — |
| darkness | FLOAT | 0.010–1 | — |
| vibrancy | FLOAT | 8.00.1–15 | — |
| glow_spread | INT | 70–12 | — |
| contrast | FLOAT | 4.00.1–10 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |