Hypereel Screen Glow (light from gameplay)
Make the screen light actually land on your streamer's face
- facecam
- gameplay
- facecam_lit
There's a detail that separates a cheap-looking facecam overlay from a real streamer aesthetic: the light from the screen lands on the person. When an explosion flashes on the gameplay, the streamer's face should catch that flash. Real streamers get this for free because they're actually sitting in front of a glowing monitor; a composited facecam doesn't, and it's one of the tells that the facecam was never really there.
Hypereel Screen Glow fixes that. It's the "light from gameplay" node in the Hypereel pipeline (symbiotica-ai/comfyui-nodes): it samples the gameplay's per-frame color and screen-blends it onto the facecam as a bottom-up monitor glow, frame-locked to the footage. Explosion → orange flash on the streamer's chin and neck. Dark corridor → the glow dims with it. The facecam's own audio passes through untouched.
How it works
Each frame of the gameplay video gets reduced to a mean color - that's the "screen light" - and that color is blended onto the corresponding facecam frame from the bottom up, like light spilling up from a monitor below the camera. smoothing controls how the sampled color evolves: at 0 you get raw per-frame flicker (an explosion strobes the face), higher values lag and soften it into a glow that breathes instead of strobing. strength is simply how much of that light lands on the streamer.
The inputs that matter
- facecam / gameplay - the two videos. The facecam drives the output (it's streamed frame by frame) and the gameplay's color signal is resampled to match it, so lengths don't need to be equal - but a much shorter gameplay clip means the last color simply holds, which looks wrong, so trim them close first (Hypereel Clip is the natural way).
- strength - 0–1, default 0.35. Start low. Screen glow is one of those effects that reads as "wrong" the moment it's too strong - you want the viewer to feel it, not see it.
- smoothing - 0–0.95, default 0.5. This is the one to fiddle with when the glow looks jittery. Raw gameplay color changes fast; 0.5 is a good middle, push higher for a softer, "lagged" feel.
One output: facecam_lit (VIDEO), the lit facecam ready to feed Hypereel Stack Composite.
Install
Ships with symbiotica-ai/comfyui-nodes - ComfyUI Manager search "Symbiotica", or clone + pip install -r requirements.txt. Needs ffmpeg/ffprobe on PATH (macOS Homebrew has them; a bare container needs apt install ffmpeg). No API key - this is a pure local ffmpeg+Pillow edit.
Gotchas
The mean-color approach is cheap and effective, but it's a global light - it can't say "the left half of the screen is blue and the right is orange," it gives you the average. That's a fine trade for a glow that's supposed to read as ambient monitor spill. The other thing: it's deterministic and runs over the whole clip, so a long reel takes real render time, and there's a cancel path wired in (the node cooperates with ComfyUI's cancel). The blend is full-frame - there's no mask input, so the glow hits the eyes and the whole face, which is what real monitor spill does. If you're keying the facecam into a cutout later, key after the glow so the light stays part of the face.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| facecam | VIDEO | — | |
| gameplay | VIDEO | — | |
| strength | FLOAT | 0.350–1 | How much screen light lands on the streamer. |
| smoothing | FLOAT | 0.500–0.95 | 0 = raw flicker, higher = softer, lagged glow. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| facecam_lit | VIDEO | — |