3MF in Solidly
Solidly opens 3MF (.3mf) files. A 3MF file is a ZIP package holding one or more model parts, which contain the meshes, colours, and textures, and a build section that lists the objects to be made. Solidly reads the 3MF Consortium's core specification, including triangle sets, the Materials and Properties extension, and the Production extension, including production alternatives. The other official extensions are recognized and listed in the Info tab; see Extensions.
Most 3MF files downloaded from model-sharing sites are Bambu Studio or Orca Slicer projects. Solidly also reads the plates, filaments, and names those slicers store; see Bambu Studio and Orca Slicer projects.
3MF is a viewing format
Solidly does not write to 3MF files. The Node tab is read only, the hierarchy cannot be edited, and Save and Save As are disabled.
Hiding objects and turning the model with Edit ▸ Rotate Model change only the view. Material values can be adjusted in the Materials tab to see their effect, and those changes are not saved; see Materials.
How a file is drawn
3MF uses Z as the up axis. Solidly turns every object in the build so that the model stands on its build platform, facing the default camera. Each model part's unit is converted, so measurements are reported in the unit the file was written in.
Meshes are drawn with flat shading, one shade per triangle, as a slicer shows them. A closed mesh hides its back faces, and an open mesh is drawn from both sides. An object placed several times is loaded once.
Objects of type model, solidsupport, and surface are drawn. Objects of type support are hidden, and they can be shown with the eye button in the tree. Where an object offers production alternatives, the first full-resolution alternative Solidly can read is drawn.
Colours and textures
| Property | How it is drawn |
|---|---|
| Base material | Its display colour across each triangle that uses it |
| Colour group | A colour at each corner of a triangle, so a triangle can carry a gradient |
| Texture | The PNG or JPEG image, with the file's tile style and filter. A texture with transparency is blended |
| Composite material | The base colours mixed in the proportions the file gives |
| Multiproperties | The layers combined by their blend method. The first texture layer is drawn as a texture, with the colour layers over it |
| Metallic display properties | Metallic and roughness |
| Specular display properties | Converted to metallic and roughness |
| Translucent display properties | Transmission and index of refraction |
| A colour with alpha below 1 | Blended |
A triangle with no property is drawn in the viewer's neutral grey. A property reference to something the file does not contain is also drawn grey, and the Info tab's Notes section reports it.
Where a file is described
| Surface | Describes |
|---|---|
| Sidebar ▸ Objects | The objects in the build and the components they place, as a tree |
| Inspector ▸ Info | Units and counts, orientation, measurements, extensions, metadata, and notes, with filaments for a slicer project |
| Inspector ▸ Node | The selected object or component |
| Inspector ▸ Materials | The file's base materials, colour groups, textures, composites, and multiproperties |
| Inspector ▸ Render | Part colours and build plates, alongside the controls every format has. See Visualizers and channel switches |
3MF files have no Resources tab.
The Objects tree
The sidebar's Hierarchy mode is labelled Objects for a 3MF file. Each item in the build is a row, and the components an object places are rows beneath it. An object without a name is listed as Object followed by its ID or, when it is defined in a separate model part, under that part's file name.
Each row has an eye button that hides or shows it. Hiding an object changes only the view, so it records no undo step and does not mark the file as edited.
The Info tab
The Summary for 3MF is described in The Info tab. The sections below it are:
| Section | Contents |
|---|---|
| Orientation | Quarter turns of the model. See Rotating the whole model |
| Filaments | For a slicer project, each filament with its number, colour, type, and preset |
| Measurements | Size, Volume, and Surface Area, in the unit the file was written in. Size is given on the file's own axes, with Z up |
| Extensions | The extensions the file declares, in Required and Optional groups |
| About | The file's metadata, such as its title, designer, and description. The application that wrote the file is shown as Created With, and its dates as Created and Modified |
| Notes | Anything that makes the model on screen differ from what the file describes |
The measurements cover what the file makes, so objects that are hidden when the file opens, such as supports, are left out. Volume is measured from closed meshes only, and objects of type surface do not contribute to it.
The Notes section reports only differences that matter for what you see, such as objects that could not be drawn, missing colours, or a unit 3MF does not define. A file that Solidly draws completely has no Notes section.
The Node tab
Selecting a row describes it in the Node tab, which is read only.
| Card | Contents |
|---|---|
| Transform | The row's Position, Rotation, and Scale, in the file's unit and on its own axes with Z up. A build item is placed relative to the file's origin, and a component relative to the object that places it |
| Object | The object's type and ID, the model part it is defined in, its component count or the number of times it is placed, its part number, and whether its mesh is closed |
| Material or Materials | A chip for each material the object uses, which opens that material's card in the Materials tab. An Appearance row describes the colouring when it comes from vertex colours, a texture, a composite, multiproperties, or a mixture of these |
| Measurements | The size, volume, and surface area of the object |
| Triangle Sets | Each triangle set the object declares, with its size |
| Metadata | Metadata the file attaches to the object or to its build item |
Materials
The Materials tab lists one card per material. Base materials come first, followed by colour groups, textures, composites, and multiproperties, and then Default for triangles with no property. A base material carries its name from the file. The other kinds are named by type and ID, such as Color Group 3, and a texture is named after its image file.
| Control | Effect |
|---|---|
| Base Color | Sets a base material's colour. On a card whose colours come from vertex colours or a texture, it tints them |
| Metallic, Roughness, Emissive | Work on every card |
Changes are drawn immediately and are never written to the file. A 3MF material cannot be added, renamed, deleted, or assigned to a different object. Textures are stored inside the package, so they are reported as embedded. The card's Descriptors disclosure lists the 3MF definition behind each material as read-only rows.
Extensions
| Extension | What Solidly does |
|---|---|
| Core specification, with triangle sets | Draws the model. Triangle sets are listed in the Node tab and do not change what is drawn |
| Materials and Properties | Draws colours, textures, composites, multiproperties, and display properties |
| Production, with Production Alternatives | Reads objects stored in separate model parts, and chooses among alternatives |
| Beam Lattice | Draws the mesh without its beams, and reports the beams in Notes |
| Slice | Draws an object's mesh. An object defined only by slices is not drawn |
| Secure Content | Skips encrypted parts, reports how many there were, and draws the rest |
| Volumetric and Implicit | Does not draw volume data or objects defined by a level set |
| Displacement | Draws the mesh without its displacement |
| Boolean Operations | Does not compute the result. The object's base shape is a hidden row in the tree and can be shown |
| Toolpath | Lists the extension only |
An extension Solidly does not draw is marked in the Info tab with a warning symbol, and its tooltip states what was left out of this file.
Units, the grid, and dimensions
A 3MF file states its unit, so it gets the measured grid and the overall dimensions described for STEP and IGES. Both are drawn while the sidebar shows the Objects tree. The measuring tool, section view, and exploded view are available for STEP and IGES only.