Free and open source · Runs in your browser · Nothing to install

Use AI to improve your renders without letting it redraw them.

Image models regenerate the whole picture: windows drift, edges soften, materials change. Render Compositor stacks the AI version over your original, aligns it automatically, and lets you mask in only the parts that actually got better.

Built for desktop browsers. Your images never leave your computer.

The Render Compositor app in split view: the left half shows the finished composite with a warm facade and a clean street, the right half shows the original render, and an orange box marks the next region to send to ChatGPT. Composite Without selected layer Region 1 · 3:2 Aligned · residual 0.4 px Render Compositor Undo Redo 100% + Fit Mask overlay Difference Split Flicker Export PNG LAYERS + Image + Paint Recolor facade Paint · Color AI edit · street Normal · mask 41% Base render Normal · 4800 × 3200 ALIGNMENT Auto‑align to layers below Search ±48 px · Scale ±4% · Weight by mask CHATGPT ROUND‑TRIP Region 1 1536 × 1024 · 3:2 Change the cladding on the upper floors to match the ground floor; keep the windows exactly as they are. Export crop + prompt Place result… PROJECT Export PNG Save project… Autosaved 9:41:07 PM Brush · reveal · 140 px · hardness 35% 2410, 1876 4800 × 3200
Split view: the composite on the left, the original render on the right, and a region marked for the next AI pass.

Masking

Keep the new street. Lose the warped windows.

An AI pass rarely improves everything. This one fixed the street but bent the windows. Paint a mask over the parts that got worse and your original shows through there, while the rest of the AI edit stays. A soft edge hides the seam.

Original renderCorrect windows, tired street
AI editBetter street, warped windows
MaskBlack hides the AI edit
Result

Drag across the image to paint the mask yourself; it shows in red while you draw. Switch to Reveal, or hold ⌥ Alt, to bring the AI edit back.

How it works

From AI draft to finished image in four steps

Treat every AI output as a source of good patches, not a replacement. You decide which pixels make it into the final image.

  1. Stack

    Drop in your original render, then the AI-edited versions. The bottom layer sets the canvas and every layer above is fitted to it.

  2. Align

    Auto-align matches edges by position and scale, or click matching points for stubborn cases. Press D: black means aligned.

  3. Mask

    Reveal only what improved with a soft brush, lasso, polygon, rectangle or gradient. Feather the edges and the seams disappear.

  4. Finish

    Recolor or relight with paint layers, clone out artifacts, then export a full-resolution PNG or JPEG.

AI round-trip

Send one area to ChatGPT. Get it back in exactly the same spot.

Fixing a small area works better than regenerating the whole render. Draw a box, and the compositor prepares everything the model needs, then puts the result back where it came from.

  1. 1
    Box itPress W and drag around the area to rework. The box snaps to the 1:1, 3:2 and 2:3 shapes image models return.
  2. 2
    Export crop + promptYou get the crop, an optional context image with the area outlined, and a prompt that says what to change and what to leave alone.
  3. 3
    GenerateUpload the images with the prompt to ChatGPT or any image model that takes an image and instructions.
  4. 4
    Place resultThe new image lands back in the box as a feathered, auto-aligned layer that you can mask like any other.
region-1-upper-floors-prompt.txt
You are editing a crop taken from a photoreal architectural rendering. The crop is 1536×1024 px and comes from the upper right of the full 4800×3200 px rendering. The second image shows the surrounding context at a smaller scale; the red box marks the exact crop area. Use it only for reference, and return the crop area only.

What to change:
Change the cladding on the upper floors to match the ground floor; keep the windows exactly as they are.

Rules:
1. Keep the camera, perspective, framing and scale exactly as in the crop. Do not zoom, shift, rotate, extend or re‑crop. 
2. Everything not described above must stay identical: building geometry, window and balcony positions, floor lines, rooflines, 
3. Photoreal architectural visualisation quality with crisp edges and believable materials. 
4. Return a single image with the same aspect ratio as the crop (3:2).

The prompt is also copied to your clipboard. Only the “What to change” part is yours to write.

Features

Everything you need to finish the image

A focused set of tools for one job: merging several versions of the same render into one clean result.

Edge-based alignment

Searches position and scale to line up edges, counting only the area you've revealed. The street can lock in even when the sky doesn't match.

See every misalignment

A Difference view, a split slider, hold-to-flicker and a red mask overlay show exactly where two layers disagree.

Masks that blend

A soft brush with size, hardness and flow, plus lasso, polygon, rectangle and gradient masks. Feather, invert, copy from the layer below, or export as PNG.

Color fixes that keep the light

Paint layers with Recolor, Relight, Shade and Glaze presets change color or brightness while keeping the texture and shadows underneath.

Clean up artifacts

The clone brush copies from the layers below to paint out AI glitches. The eyedropper samples single pixels or 5×5 and 15×15 averages.

Private by design

One HTML file with no server behind it. Images stay on your machine, your session autosaves in the browser, and projects save to a single JSON file.

Keyboard first

Every tool is one key away

Hover any button in the app to see its shortcut.

Tools

V
Move, scale, rotate
H / Space
Pan
B E
Reveal / hide brush
L P R
Lasso, polygon, rectangle
G
Gradient mask
I C
Eyedropper, clone
W
Region for ChatGPT
A
Align by points

Checking

D
Difference view
\
Split view
hold X
Flicker the layer
M
Mask overlay
⇧M
Ignore masks
0 1
Fit, 100%
[ ]
Brush size

Project

⌘Z ⇧⌘Z
Undo, redo
⌘S
Save project
⌘E
Export PNG
⌘I
Invert mask
Nudge 1 px (⇧ 10 px)
Use Ctrl in place of ⌘ on Windows and Linux.

Run it yourself

One HTML file. No build, no dependencies.

Use the hosted version, or clone the repo and serve the folder on your own machine:

git clone https://github.com/bwb-tools/render-viewer.git
cd render-viewer
python3 -m http.server 8765
# then open http://localhost:8765/compositor.html
  • On macOS, double-click serve.command to do the same thing.
  • Serve the folder over http:// rather than opening the file directly. Browsers block pixel access to local files, and export and auto-align need it.
  • Keep reference files in a references/ folder next to the page. If references/Architectural_Material_Reference_Guide.md exists, it's appended to region prompts.
  • To open a fixed set of images on startup, list them in DEFAULTS near the end of compositor.html.

Try it on your next render

Open the app, drop in a render and an AI edit, and press Auto-align.

Open the compositor