Multicolor 3D printing without an AMS
This guide was drafted with AI assistance.
A single-nozzle printer can still print in color. If each color starts at its own height (a white base, a red top), pause at that layer and swap the filament. If colors sit side by side on the same layers (eyes on a face, spots on a cap), print each color as its own part and glue them together. Paint the model in your slicer, then split the painted 3MF with the 3MF color splitter: flat borders become cuts with a pin, painted patches become inlays that slide into pockets.
Three ways to get color out of one nozzle
A printer with an AMS, an MMU or a tool changer loads a different filament every time a layer needs one. Without one, the nozzle holds one color at a time, and there are three honest ways around that:
| Method | Works for | Does not work for |
|---|---|---|
| Filament swap at a layer height | Colors stacked by height: a base, a band, a top, raised text on a flat sign | Two colors side by side on the same layers |
| Every color as its own part | Any layout at all, including eyes, spots, stripes and logos | Nothing, but it costs gluing and a visible seam at each color border |
| Both combined | Mostly stacked colors with a few small details | Nothing; it is the most work |
Filament swaps at a layer height
Every slicer can pause at a chosen layer. In Bambu Studio and OrcaSlicer, right-click the layer slider and add a pause or a filament change; PrusaSlicer adds a color change with the plus button on the same slider. The printer parks, you pull the old filament, feed the new one and purge until the color runs clean, and the print carries on.
It is the cheapest color there is: no extra parts, no glue, and only one purge per swap instead of one per layer. Its limit is that a swap changes everything above that height. Raised lettering on a sign is perfect for it. A face with two eyes is not: the eyes share their layers with the skin around them, and a layer swap cannot tell them apart.
Every color as its own part
When colors share layers, split the model instead of the print. Each color becomes a separate part that prints in one filament, and the parts fit back together. It sounds like a workaround, and on a small figure it is often the better print:
- No purge on every layer. A multi-material printer flushes filament on every layer where colors meet. Separate parts flush nothing. How much that saves is worked out in How much filament a color change wastes.
- Cleaner borders. Two filaments meeting on one layer bleed into each other a little. Two parts meet at a sharp edge.
- Each part prints its best way up. An eye inlay prints flat on the bed with its visible face on top, instead of wherever it happened to sit on the model.
The catch is the joint. Two parts that only touch along a painted border hold nothing, and a patch cut straight off the surface is a thin shell with no body to glue. The joint has to be designed, which is what the next section is about.
Split a painted 3MF by color
You already have the best tool for deciding where the colors go: the paint brush in your slicer. Bambu Studio, OrcaSlicer and PrusaSlicer all save that paint inside the project .3mf, triangle by triangle. The 3MF color splitter reads it and builds the parts:
Paint and save the project
Paint whole areas with the brush or the fill tool, then save the project (.3mf). An STL export drops the paint. Tiny specks under 2 mm² are ignored, so stray brush dabs do not become parts of their own.
Pick the main body
The color covering the most surface is the main body by default; every other color is cut out of it. Set any color to "Keep as paint" if you would rather print that one with a filament swap.
Let each color get the right joint
A color whose border lies flat all the way round, like a hat or a cap, is cut off on that plane, with a pin at the thickest point of the cut so the halves line up. A color drawn on the surface, like an eye or a spot, becomes an inlay: a plug with straight walls and a flat floor that slides into a matching pocket, 0.2 mm wider on each side. Why those numbers work is in 3D printed inlays that fit.
Download the parts
Get a 3MF that opens in Bambu Studio or OrcaSlicer with every part already on its own filament, or one STL per part, already turned the way it prints best.
A worked example: a painted mushroom
The tool's own example is a mushroom painted in three colors: a red cap, a cream stem and six white spots, with the spot edges painted across split triangles the way a real brush leaves them. It splits into eight parts and one pin in under two seconds in the browser:
- The cap is the main body (74% of the surface), 71 cm³, with six pockets in its top.
- The stem meets the cap on a flat ring, so it is cut there: 12 cm³. A 5 mm square pin sits in a socket on each side of the cut, so stem and cap line up.
- Six spots become inlays of 0.13 to 0.21 cm³ each, each reaching 1.6 mm below its deepest point so the thin edges are still printable.
Printed as one painted model on an AMS, the same file would change filament on every layer where a spot meets the cap. Split, it prints as three single-color plates.
Printing and gluing the parts
- Print flat cuts face down and inlays on their flat floor, visible side up. The STL download already turns them that way.
- Dry-fit before glue. An inlay should slide in with light pressure. If one is tight, sand its side, never its top.
- Glue sparingly. A small drop of CA glue in the bottom of a pocket is enough; too much squeezes out along the seam. Flat cuts get a thin film and the pin keeps them from sliding while it sets.
- Mind the seam. Every color border becomes a hairline. That is the trade for printing colors without a multi-material unit, and it is why cuts follow the paint border: the seam hides where the color already changes.
Common questions
Can I print multiple colors without an AMS or MMU?
Yes, two ways. Pause at a layer height and swap the filament by hand, which works when each color starts at a different height. Or print every color as its own part and glue them together, which works for any layout, including eyes, logos and spots that sit side by side on the same layers.
How do I split a painted 3MF into separate parts by color?
Paint the model in Bambu Studio, OrcaSlicer or PrusaSlicer, save the project as .3mf and open it in the Meshcast 3MF color splitter. It cuts colors behind a flat border off on that plane with an alignment pin, and turns painted patches into inlays that slide into pockets. It runs in the browser and downloads one part per color.
Is a manual filament change at a layer height the same as painting?
No. A layer-height swap changes the color of everything above that height, across the whole model. Painting assigns a color to part of the surface. Paint that sits next to another color on the same layer cannot be printed with layer swaps; it needs either a multi-material printer or separate parts.
Made by meshcast.app. A painted file that does not split the way you expected? Email us the 3MF and we will take a look.