# 3MF files

Manufacturing model packages, extension compatibility, tessellation and reliable handoff of 3MF geometry and slicer projects.

Reviewed: 2026-11-01

Tags: parts-and-design, file-formats, additive-manufacturing

Specify whether the 3MF delivery is geometry, a production build or a slicer project. The Consortium lists core 1.3.0 as ISO/IEC 25422:2025 and publishes core 1.4.0 and separate extensions. [3MF Consortium specifications](https://3mf.io/spec/)

The core defines a ZIP-based Open Packaging Conventions container with XML model parts and relationships. A relationship identifies the starting model; readers should not infer it from a familiar internal filename. Resources hold reusable objects, while build items select objects and transformations for output. An unreferenced resource is not automatically another part to manufacture. Model units are explicit, with millimeters the default when omitted. [Core specification 1.4.0](https://github.com/3MFConsortium/spec_core/blob/master/3MF%20Core%20Specification.md)

A useful handoff therefore identifies both the part geometry and its intended instances. If a package contains a reusable component and four placements, compare the four placed parts in the recipient's preview with the intended assembly or build. Do not count archive entries to determine the quantity. Keep commercial order quantity separate from the placements in a preparation file: a layout can be a trial arrangement rather than an order instruction.

## Package, geometry and build intent

Core meshes use vertices and triangles. Applicable solid meshes have manifold and orientation requirements, but the extension does not certify that an arbitrary file satisfies them. Check the imported result for missing surfaces, unwanted bodies and changed dimensions before preparing a build. [Core specification](https://github.com/3MFConsortium/spec_core/blob/master/3MF%20Core%20Specification.md)

## Extensions and application support

An extension is a defined information model, not a guarantee that every application preserves it. The Materials and Properties extension 1.2.1 defines color groups, textures, composite materials, multiple properties and display properties. A displayed color or material name should not be treated as a purchased feedstock specification, certified batch identity or qualified machine recipe. Agree separately on resin, powder, filament or other process material and its acceptance requirements. [Materials and Properties extension](https://github.com/3MFConsortium/spec_materials/blob/master/3MF%20Materials%20Extension.md)

The Production extension supports references between model parts inside the package and identifiers for tracking build items. This can help distinguish individual instances and preserve their identity through a workflow. An identifier does not establish that a part passed inspection. The specification index links Production 1.1.2 as a PDF and 1.2.0 on GitHub. The repository document labels itself version 1.2, published. Record the actual specification used by the exchanging applications instead of relying on the index alone. [Production extension](https://github.com/3MFConsortium/spec_production/blob/master/3MF%20Production%20Extension.md), [specification index](https://3mf.io/spec/)

Other extensions address such information as beam lattices, Boolean operations, displacement and volumetric data. Identify the required subset when selecting an import/export route. Core readers must reject unsupported required extensions; optional information may be ignored, so an apparently successful import can still lose information relevant to the job. [Extension list](https://3mf.io/spec/), [core extension handling](https://github.com/3MFConsortium/spec_core/blob/master/3MF%20Core%20Specification.md)

## Model exchange versus slicer project

Prusa documents **Save Project as** as a way to store objects, settings, modifiers and parameters in a 3MF project. Its cited help page belongs to the PrusaSlicer 2.9 legacy documentation. This is a bounded example of a slicer project workflow, not a promise that another slicer interprets every setting the same way. [Prusa: saving projects as 3MF](https://help.prusa3d.com/article/saving-projects-as-3mf_1773)

For a repeatable project handoff, record the originating application version, selected printer and material profiles, and any locally modified settings. On receipt, inspect what was actually restored. A geometry-only import is inadequate when support placement or modifiers are part of the manufacturing instruction. Conversely, do not assume a project has already produced approved machine instructions. Review the generated paths or other process output in the receiving workflow before release.

Retain the native design and its revision separately when future edits need sketches, dimensions, constraints or feature history. The project package and the authoritative design can serve different purposes. State which controls acceptance if a preview, drawing and manufacturing model disagree.

## Export quality and dimensional checks

Tessellation settings affect the exported shape. Creo Parametric 13 documents chord height as controlling chord-to-surface distance, angle control as improving small-radius curves, and step size as controlling triangle characteristics. It also offers proportional settings for assembly components. These are exporter-specific controls; do not transfer their names or numerical values to another exporter without checking that implementation. [PTC: exporting a part or assembly as 3MF](https://support.ptc.com/help/creo/creo_pma/r13/usascii/data_exchange/interface/to_export_part_or_assembly_to_3MF.html)

Select export settings against the smallest relevant features and dimensional requirements. Compare holes, thin walls, curved mating surfaces and the overall envelope with the authoritative design. A dense mesh can still represent the wrong revision, and a visually smooth preview does not demonstrate a toleranced fit. Recheck after any automated mesh repair: closing a gap can also alter an intentional opening.

**Illustrative scale check:** a reference length intended to be 25.4 mm is 1 inch. If the imported reference measures 1 mm, the model is smaller than intended by a factor of 25.4. This is a diagnostic calculation, not a recommended corrective scale operation. Establish whether the unit declaration, export or import was wrong before changing geometry. Record the corrected source and re-export so later deliveries do not repeat the error.

## Acceptance and practical handoff

The Consortium's open-source lib3mf offers reading, writing, conversion and validation functionality. Such validation can check format-related issues; it does not qualify a manufacturing process or demonstrate dimensional conformity of a produced part. [lib3mf](https://github.com/3MFConsortium/lib3mf)

For an actionable exchange, provide:

- Part number, revision and intended role of the file, including whether it is a model or application project.
- Exporter and intended receiving application versions, required extensions and known information losses.
- Expected units, envelope, body count, instance count and orientation references.
- Material and process requirements outside the package, plus the drawing or specification governing acceptance.
- Confirmation that the recipient reopened the delivered file and reviewed geometry, placements and any process settings that matter.

Treat an import warning, missing texture, changed instance count or substituted profile as a question to resolve before release. Preserve the agreed original delivery rather than silently replacing it with a repaired or converted derivative.

## Source versions and related reference

The core repository identifies 1.4.0 as published and dates its change-history entry **6 February 2025**. The Materials and Production versions above are those printed in their linked documents; no additional revision date is inferred from a web crawl. PTC's cited page is for Creo 13. [Core change history](https://github.com/3MFConsortium/spec_core/blob/master/3MF%20Core%20Specification.md)

See [Drawing and model file references](index.md) for the surrounding design handoff.
