MeshColor

Add Textures and Multicolor Logos to 3D Prints

MeshColor is a free browser tool that wraps color textures, logos and patterns around a 3D model and exports a print-ready multicolor 3MF you can open straight in Bambu Studio or OrcaSlicer. Load an STL or 3MF, paint it, export it — nothing is ever uploaded.

What MeshColor does

Painting 3D models usually means either hand-assigning filaments face by face in the slicer or giving up on detail entirely. MeshColor works from images instead. Add a texture layer — a built-in pattern like wood grain or carbon weave, or your own image — and choose how it projects onto the model: planar, cubic (triplanar) or cylindrical. The texture wraps around the real curved surface of the mesh, not a flat preview of it.

Drop in a logo or any color image and MeshColor separates its colors automatically, mapping each one to its own filament slot. The surface fill tool lets you restrict a layer to just the regions you paint, so a logo lands on one face and the grain covers everything else. Text layers add lettering with font, style and mirroring controls for text on a bottom or far face.

Detail is added only where colors meet, so edges stay sharp while the triangle count stays manageable. Nozzle presets from 0.2 mm to 0.8 mm set the base mesh size, color-edge detail and minimum feature size to something your printer can actually resolve, and export runs a lossless reduction pass that collapses the extra triangles back out of single-color regions. The result is a standard multicolor 3MF with per-triangle filament assignments that both Bambu Studio and OrcaSlicer read natively.

How MeshColor differs from BumpMesh

BumpMesh changes the geometry: it displaces the surface so the model has a real, physical texture you can feel, printed in a single color. MeshColor doesn't move the surface at all — it refines the mesh where it needs to and applies color to it, so one flat surface can carry several filaments. The two solve different halves of the same problem and combine well: run a model through BumpMesh for physical relief, then through MeshColor to add a multicolor logo on top. Full comparison: MeshColor vs BumpMesh.

How MeshColor differs from HueForge and Chroma Canvas

HueForge and Chroma Canvas are filament-painting tools for flat pictures: they turn a 2D image into a layered panel, using filament transparency and layer order to blend colors. They're superb at what they do, and what they produce is a plaque.

MeshColor starts from a 3D model. It maps color graphics onto the curved surfaces of an existing object — a vase, an enclosure, a controller shell, a nameplate on a bracket — and gives back the same object with color information attached. No layer-order tricks, no transparency math: each triangle simply gets a filament. Full comparison: MeshColor vs HueForge and Chroma Canvas.

What you need

  • A multi-material printer setup — an AMS, AMS lite, or a toolchanger. A color texture puts several colors on nearly every layer, so a single-extruder printer can't produce it without manual swaps on almost every layer.
  • Bambu Studio or OrcaSlicer to slice the exported 3MF. Filament assignments come through with the file; your printer and filament presets are untouched. See adding textures to a model for Bambu Studio for the full workflow.
  • A current desktop browser with WebGL. There is nothing to install and no account to create.

Private by design

MeshColor runs entirely in your browser. Meshing, color resolution and 3MF packing all happen on your own machine, and the site is served with a Content-Security-Policy of connect-src 'none' — the browser itself blocks every outbound network request the page could make. Your models and images physically cannot leave your computer, whether or not you take our word for it.

MeshColor is free, made by Break a Layer.

MeshColor didn’t load

The app’s files didn’t start correctly in this browser.

Try a reload — and if that doesn’t help, a hard reload (Ctrl+Shift+R, or Cmd+Shift+R on a Mac) to bypass cached files. MeshColor needs a current desktop browser with JavaScript and WebGL enabled.