◎ Radiance Viewer
The viewer that finally shows you what your floats actually are
- image
- compare_image
- zdepth
Every ComfyUI install has a Preview Image node, and it lies to you. It shows the top of your float range mapped to white, so an HDR image with a hot specular reads as "fine, a bit blown," when half your dynamic range is sitting above 1.0 and getting silently crushed on export. The Radiance Viewer is the fix: a Nuke/Flame/Resolve-style interactive viewer that understands 32-bit float data, scopes it properly, and doesn't flatten your highlights to prove a point.
This is the flagship of the pack's "you're working in HDR now" story - the node the pack's community thread (the +78 "hidden gem for film and VFX" post) exists to tell people about. It takes IMAGE or VIDEO, and its whole job is letting you actually see and grade the 32-bit data the rest of the suite produces.
What it does
GPU scopes first, because that's what makes it a colorist's tool rather than a pretty preview: waveform, RGB parade, vectorscope with the skin-tone line, histogram - all HDR-aware, all toggled by keyboard (W, M, V). Then the grading surface: exposure, gamma, gain, lift, saturation, temperature in an interactive panel, Power Windows (radial and box masks with feather and rotation) for region work, and the Comparison Bridge - a mouse-draggable wipe against a reference, with an 8-still shelf. On the look side it adds anamorphic streaks, Brown–Conrady lens distortion, and a 7×7 bilateral denoise, plus channel isolation, false color, and zebra.
The inputs that matter
- bit_depth - the important dropdown.
16-bit (Quality)is the sensible default.32-bit Floatgives you a full fp32 sidecar that matches Nuke/Resolve viewer precision - this is the one to flip to when you're actually grading HDR highlights, at the cost of double the VRAM.16-bit + HDR Datais the middle ground. - compare_image - wire a reference still and use the wipe to A/B.
- zdepth - a depth map to view with the Z key.
The export path (in the viewer controls) bakes your interactive grain, bloom, halation, diffusion and denoise into 16-bit PNG, .rhdr sidecar, or .exr. Note the schema shows no tensor output - it's a terminal display node, so branch the wire if the image needs to continue the pipeline.
Where people get burned
- The README's standing warning applies double here: the viewer shows what your data contains, and it cannot recover highlight detail that was clipped in an 8-bit source. If your input is a flat PNG, 32-bit mode just shows you 8 bits more honestly.
- "16-bit" falls back to 8-bit silently if OpenCV isn't importable - the source logs a warning and degrades. If your viewer looks banded, check that opencv-python actually installed.
- The Pro Viewer class in old workflows is this same node; use this name for new graphs.
Install
ComfyUI Manager → search Radiance, or:
cd ComfyUI/custom_nodes
git clone https://github.com/fxtdstudios/radiance.git
cd radiance
pip install -r requirements.txt
On Linux, install libopenexr-dev before the requirements step. Restart after - it's under FXTD Studios/Radiance/Views.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE,VIDEO | — | |
| bit_depthopt | COMBO | 16-bit (Quality) | 8-bit: Fast, 256 levels. 16-bit: Quality, 65536 levels. 16-bit + HDR: Adds float16 sidecar for HDR color picker. 32-bit Float: Full IEEE 754 fp32 sidecar — industry standard, matches Nuke/Flame/Resolve viewer precision. Larger files. |
| compare_imageopt | IMAGE,VIDEO | — | |
| zdepthopt | IMAGE,VIDEO | Z-Depth map to display when pressing Z button |
Outputs (0)
No outputs