Skip to main content
Model Mender

Browser-local converter

3MF to OBJ converter

Convert a 3MF package into a Wavefront OBJ locally, for a 3D application rather than a slicer. Build transforms are applied, named objects survive as OBJ objects, and the base materials 3MF declares are written to an .mtl sidecar.

Drop your 3MF files here

STL, OBJ, PLY, GLB, glTF, 3MF, SVG and DXF. Nothing is uploaded: files are read and converted inside this tab. Checking what this device can handle...

Queue

No files yet. Drop models above, or use the file picker.

Add a model to see it here.

Output

Units

Size and placement

Repair and cleanup

These can change the shape, so they need a before-and-after review before export.

Inspection

Add a model to see its dimensions, mesh health and estimated volume.

What this 3MF to OBJ conversion does and does not do

  • 3MF declares a unit and OBJ has none. The coordinates are written in the unit you select, and once they are in the OBJ nothing records what they mean, so note it down or keep the 3MF.
  • Base materials and display colours are written to a companion .mtl. Keep the .obj and .mtl together, since OBJ links them by filename.
  • The build section places objects with transforms, and components can nest. Those transforms are baked into the vertices so the shape matches, but the assembly structure is flattened to a flat list of OBJ objects.
  • 3MF extensions beyond the core specification, including production, slice and beam-lattice data, are not interpreted.
  • A 3MF is a ZIP archive and is treated as untrusted input: entry counts, declared sizes, compression ratios and entry paths are all checked before anything is decompressed.

Troubleshooting

The 3MF will not open

It must be a complete .3mf package, not the 3dmodel.model XML on its own. A hand-re-zipped archive is often missing its relationship part; re-export from the original tool.

Only part of the assembly appeared

Only objects referenced by a build item are placed, which is what the specification requires. If the 3MF declares objects but no build items, the workspace includes them all and tells you it did so.

The scale is wrong in my 3D application

OBJ carries no unit, so the importing tool guesses. The workspace shows the real dimensions in millimetres from the 3MF declaration; convert the unit before exporting if you need different numbers.

No colour after import

Load the .obj with the .mtl beside it. If the 3MF declared no base materials, there was no colour to carry and the workspace will have said so.

Questions

Why convert 3MF to OBJ?

Usually to get a print file into a modelling or rendering tool. 3MF is aimed at manufacturing, and a lot of 3D software still treats OBJ as its lowest common denominator.

Is a 3MF from an unknown source safe to open here?

It is opened defensively. Zip bombs, path traversal, absurd entry counts and XML entity attacks are all refused before any expensive work happens, and nothing is written to your filesystem.

How do I know the OBJ matches the 3MF?

It is re-parsed after writing and its triangle count, mesh count and bounding box are compared against the source within a stated tolerance, shown next to the download.

More tools