Free · No upload · Runs in your browser

Recolor a painted 3MF without repainting

Drop a multicolor 3MF, and every color in it shows up as a swatch. Swap each one for any hex — or search 600+ real filaments to match the spools you own — then download the recolored file. Nothing is uploaded.

Drop a painted 3MF here

or choose a file — the colors are detected automatically, then you swap them one by one.

.3MF · painted or multicolor · max ~200 MB
drag to rotate · scroll to zoom

Nothing to recolor in this file

This 3MF carries geometry only — no paint, no per-part filament assignments, no color groups. To add color, open it in the painter and export a multicolor Standard 3MF.

Paint this model →
File
Triangles
Colors
Size

Loading model…

Reading file…

Want to change more than the colors? Open the same file in Layerpaint to repaint regions, add text and logos, or split colors differently — then export a Standard 3MF for your slicer.

Open the painter →

🔒 Files are processed locally in your browser and never uploaded.

Change the colors of a painted 3MF

Multicolor models rarely arrive in the filaments you own. A MakerWorld download painted in teal and cream still has to print from the spools on your rack, and the usual fix — remapping filaments in the AMS screen at print time, every time — doesn't stick to the file. MakerWorld also doesn't accept color-only remixes, so there's no way to keep a recolored variant on the platform. This tool edits the file itself: drop the 3MF, swap each detected color, download a copy that opens in your slicer already in the right colors.

It reads the color no matter how the file stores it

3MF files carry color three different ways: Standard 3MF color groups (what Layerpaint and most non-slicer tools write), Bambu Studio and OrcaSlicer per-triangle painting, and per-part filament assignments — which is how most multicolor MakerWorld downloads are set up, with no painting at all. The tool detects all three, shows every color as a swatch with its triangle count, and previews your swaps live on the 3D model.

Match to filaments you actually own

Each swatch takes any hex value, but the more useful path is the built-in filament search: 600+ real spools across Bambu, Polymaker, Prusament, Overture, Hatchbox, Sunlu, eSUN, Elegoo and Creality, with closest-match suggestions ranked by perceptual color difference (ΔE2000). Type "matte charcoal", pick the spool, and the model previews in that exact color. For a deeper color workflow there's also the filament color matcher.

What happens to the file

When the 3MF stores its own color table — Bambu projects, Orca projects, Layerpaint exports — only the color values are rewritten. The mesh, the plates, the print settings and everything else stay exactly as they were. A file that references slicer filament slots without storing the colors is re-emitted as a painted Standard 3MF with the colors baked in, which has a side benefit: it becomes readable in PrusaSlicer and other tools that can't parse Bambu's paint format. There's a full walkthrough of the in-app route in recolor a painted 3MF without repainting.

Questions

Is my model uploaded anywhere?
No. The file is read, recolored and rewritten entirely on your device in JavaScript. It never leaves your browser — fine for commissioned work or anything private.
Which painted 3MF files does it read?
Standard 3MF color groups, Bambu Studio / OrcaSlicer per-triangle painting, and per-part filament assignments (most multicolor MakerWorld downloads). Colors are detected automatically on drop.
Does it change the mesh?
No. On the rewrite path the geometry is untouched — only color values change. On the re-emit path (files with no stored color table) the mesh is written as a single Standard 3MF object with the same triangles.
Will the recolored file open in my slicer?
Yes. Rewritten Bambu/Orca projects keep their structure and open as before, in the new colors. Standard 3MF output opens in Bambu Studio, OrcaSlicer and PrusaSlicer.
Can I split one color into two, or repaint a region?
That's painting, not recoloring — open the file in the Layerpaint painter, which reads the same formats and lets you repaint per region before exporting.