Magenta FX / Water Plus
Remove stubborn pink and lavender fringes from magenta FX — neighbor-color-assisted, for the problem cases.
Summary
Magenta FX / Water Plus is meant for the problem assets where, after the normal Magenta FX cleanup, visible pink or lavender fringes are still left over. It removes the background like the other Magenta profiles, but pulls the edge spill pixels clean neighbor-color-assisted — and stays deliberately a separate profile, so the conservative FX cleanup and normal outline sprites don't get more aggressive.
When to use it
- After Magenta FX / Water a pink/lavender fringe is still visible — especially at high zoom (8–10×).
- You have blue-violet residual fringes (e.g.
#8C6CED,#7712F0) that stay opaque but should be corrected toward blue/cyan.
When not this profile:
- Normal sprites → Magenta Sprite / Outline (Plus is too aggressive for sprites).
- Clean FX with no residual fringe → the more conservative Magenta FX / Water is enough.
- Soft glow with fractional alpha → FX / Glow (Soft Matte).
How it works
Background detection is like the other Magenta profiles (edge-connected). In the Edge cleanup, pink spill pixels near the transparency are not neutralized to black; instead: first a cooled fallback color is computed, then mixed with matching neighbor colors. Only opaque neighbors within the set radius count as reference — ones that aren't key/spill themselves and fit water/FX in color (bright, near-neutral pixels; clear cyan/blue water pixels; bright blue-green pixels). The Spill strength controls how far the corrected pixel is pulled toward the neighbor color: Soft 35% · Normal 55% · Strong 75% · Maximum 90%.
Across versions the profile has grown steadily more robust:
- Residual-magenta fine-tuning (since 0.8.2) for bright/faintly pink-tinted edge pixels — only near the transparency, with more cautious strength.
- Magenta-gap limit: at Maximum, green must not be below red and blue at the same time — meant for stubborn 8–10× zoom fringes, not as a default for normal sprites.
- Tighter water-blue protection (since 0.8.3): bright lavender fringes are treated again as correctable magenta contamination.
- Blue-violet residual fringes (since 0.8.4) like
#8C6CED/#7712F0stay opaque but are shifted toward blue/cyan. - Component-based residual-chroma stage (since 0.8.5): finds small connected residual areas that touch transparency and cleans lavender/deep-violet fringes outside the radius — without enlarging the spill radius.
Settings
| Slider | Effect |
|---|---|
| Key color | Magenta key color. Quick button #FF00FF; FX+ sets #FF00FF and this profile in one click. |
| Edge cleanup | On (default) pulls pink fringes clean neighbor-color-assisted; Off removes only the background. |
| Spill radius | Neighborhood radius (1–4, default 2). Larger values are risky for pixel art (they pull distant colors into hard edges). |
| Spill strength | Soft 35% · Normal 55% · Strong 75% · Maximum 90% — how far it's pulled toward the neighbor color. |
Recommended settings by use case:
| Asset type | Recommendation |
|---|---|
| Residual fringe after FX / Water | Normal/Strong |
| Stubborn 8–10× zoom fringe | Maximum (only for hard cases like these) |
| Pixel art with hard edges | Keep the spill radius small (1–2) |
CLI / Automation
Headless, the same neighbor-color-assisted cleanup — invocation and shared flags in the CLI
overview. You pick this profile with --profile magenta_fx_plus.
Relevant flags: --key-color (default #FF00FF), --edge-cleanup {on,off}, --spill-radius 1–4 (keep
it small for pixel art, 1–2) and --spill-strength {conservative,normal,strong,maximum} (maximum only
for stubborn 8–10× zoom fringes).
Example:
clean_sprite_chromakey.py fx.png fx_out.png --profile magenta_fx_plus --spill-strength strong
FAQ
Why a separate profile instead of just setting it "stronger"? So the conservative FX cleanup and normal sprites don't get more aggressive. Plus is the targeted escalation for the problem cases — deliberately kept separate.
What does the FX+ quick button do?
In one click it sets the key color #FF00FF and the profile Magenta FX / Water Plus — the fast
entry for magenta-keyed FX with a residual fringe.
Why not just a larger spill radius? The spill radius is capped at 1–4 px — larger values pull distant colors into hard edges on pixel art. The component-based stage cleans fringes outside the radius without enlarging it.
Limits
- Too aggressive for normal sprites — Magenta Sprite / Outline is the one in charge there.
- Maximum is only meant for stubborn zoom fringes, not as a default profile.
- Spill radius max. 4 px (pixel-art protection).
- Hard alpha — for soft glow, FX / Glow is in charge.
Examples

Like Magenta FX, plus a stronger despill of the magenta residue.
Related features
- Magenta FX / Water — the conservative FX cleanup (first attempt).
- Magenta Sprite / Outline — for normal sprites with a hard dark outline.