Specular Micro-Bloom PRO
The 3px glow that makes skin look wet instead of plastic
- image
- IMAGE
The single most common photorealism complaint is "too smooth," "waxy," "plastic" skin. But here's the thing - the fix isn't more sharpening or more noise. Real skin, especially in macro and close-up portraits, has a micro glow: light scatters in the thin layer of moisture and oil on the surface, so the tiniest speculars - pores, sweat beads, the catchlight in an eye - bloom outward by just a couple of pixels. AI renders nail the broad highlights but miss this microscopic bloom, which is part of why faces come out looking like silicone. Specular Micro-Bloom PRO is the pack's answer: a hyper-targeted bloom that only touches extreme highlights and diffuses them over a 1–5px range.
This is one of the pack's smartest ideas, because it's aimed precisely at the gap between "render" and "captured" - not the whole frame, just the speculars.
How it works
The node extracts only the extreme highlights, but with a soft-knee curve rather than a hard threshold. A hard "pixels above X" cut creates a visible binary mask; the soft knee (borrowed from cinematic VFX and game post-processing) rolls off the highlight extraction smoothly, so a bright pixel blends into the effect instead of popping. It then diffuses the extracted speculars in two stacked blur layers - a tight core (radius, the dense heart of the reflection) plus a wider halo (radius × spread, the ambient ambient moisture glow) - weighted 70/30, and adds the result with a strict additive blend scaled by strength.
The two-layer approach is the physics part: a specular highlight isn't a uniform glow, it has a bright dense center and a fainter spread, and the node reproduces that gradient instead of a flat bloom.
The inputs that matter
image- the IMAGE to bring alive.threshold(default 0.8, 0–1) - how extreme a highlight must be to bloom. At 0.8, only real speculars qualify; dropping it pulls in regular skin tone.softness(default 0.5, 0–1) - the width of the soft-knee rolloff. Lower = more selective, higher = more gradual.strength(default 1.5, 0–10) - how much bloom adds. Note the range goes to 10 - this one is meant to be felt.radius(default 5, 1–50) - the core diffusion size in pixels. The "micro" in the name lives here: keep it small.spread(default 2, 1–5) - how much wider the ambient halo is than the core.
Output: a single IMAGE of the same size.
Installing it
One of 14 nodes in the Post Processing PRO pack. ComfyUI Manager → search "Post Processing PRO", or:
cd ComfyUI/custom_nodes
git clone https://github.com/Guillaume-127/ConfyUI_Post_Processing_PRO
Restart. No requirements file, no model downloads - numpy thresholding and a couple of OpenCV blurs.
Where people get tripped up
The trap is treating it like a general bloom. It is not - if you want a big cinematic bloom around light sources, that's Halation PRO with its red tint and 20–100px radius. This node is a micro diffusion, and its magic disappears the moment you push radius past ~10. Judge it at 100% zoom on an eye or a dewy pore; at preview scale it looks like nothing happened. Where it shines in a stack: after Subsurface Diffusion PRO (which softens the red subsurface layer of skin) and before Film Grain PRO (which unifies the frame) - that order is basically a one-stop "organic skin" chain, and it's why people who reach for this pack end up keeping all three.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| threshold | FLOAT | 0.800–1 | — |
| softness | FLOAT | 0.500–1 | — |
| strength | FLOAT | 1.500–10 | — |
| radius | INT | 51–50 | — |
| spread | FLOAT | 2.01–5 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |