Formware 3D comes with an extensive documentation. You can find it inside the program but also here on the left. Click a topic to read more about the functionality.

Video tutorials

Below an overview of our current tutorials. It starts from basic to more advanced functionality. We are working on more tutorials.



The top of the program contains the menu bar. The menu bar contains all tools available to you during normal operation. Some of the menu items also have keyboard shortcuts. These are displayed in the menu item.


Below the menu bar the toolbar is located. All the tools from the menu are also located in the toolbar if you find this easier to use. When you hover over the toolbar items you see their description popup. When you enter different modes in the program (like supporting mode) you (de)activate different toolbar buttons.

Machine/profile selection

On the top right there are 2 selection boxes allowing you to change your machine (build table size) and your print profile (amongst others layer height, resolution etc.)

Job estimates

On the top right you also see your print job estimates. This shows you the estimated time for your current layout, the volume and the number of layers. By showing you the % of volume take up by supports you can optimize for material usage.

Part tree

On the right side of the layout your part tree is displayed. The following options allow you to change things per part:

  • The eye symbol toggles visibility
  • The information sign shows the part name in the 3d view
  • The colored circle allows you to change part color
  • Some parts may show an exclamation mark on import. This means they might contain mesh errors. Further mesh diagnoses is required.
  • Clicking the support mode button brings you to support mode with this item
Additionally when you click the + symbol next to your object, it shows you the part can have one or multiple of the following:
  • Mesh parts: one or multiple disjoint geometries inside this part
  • Supports: support your part during printing
  • Infills: for example a lattice infill for hollowed objects
  • Drainage holes: to allows access resin/material to flow out hollow area's during printing

Object tabs

The object property tabs on the bottom right provide you with information for 1 or more selected objects. This can be on of the following:

  • Mesh/part information
  • Edit 1 or multiple supports
  • Support auto generation (easy or advanced)
  • Mesh diagnosis

Left bar

The slice bar on the left of the window allows you to see the cross sections of your prepared slice job. Drag the bar to view a cross section. With the and icons below it you can toggle to fill in the cross section or to leave it empty and look inside your mesh.

The icon toggles of the gridsnap. (Gridsnap means when dragging objects they will snap to an invisible grid.). You can define more gridsnap settings in the configuration.

The icon helps you visualize the cross section on your object by a white line. Using this in supporting mode makes it easy to place supports at the same height.

With the icon you can quickly enable or disable the visibilty of critical build area's on your parts. You can find this setting also in the configuration window.

Each support algorithm uses a different filtering for critical minima and some minima might become unsupported in the proces. In order to view critical minima after a model is supported you can use this toggle.

Bottom status bar

The status bar on the bottom gives you accurate camera coordinates. The status bar on the lower right gives you updates on long running operations like opening and saving files or running the support generation. During various supporting modes it also gives you a hint an what to do next.

Navigation in 3D

Viewing and navigating a 3D World on a 2D screen means a certain transformation has to occur. From 2D mouse coordinates to a 3D World. Luckily we have left/right/wheel mouse buttons and a keyboard to help create a smooth and intuitive navigation.

Rotation (Pitch & Yaw)

You rotate the window by holding your right mouse button down and moving your mouse. You can roll vertically and horizontally. When the mouse reaches the end it transfers to the other side of the window so you can continue rotating.

Translation (Panning)

Hold down shift and then hold down your right mouse button to translate (Pan) the view. Alternatively you can pan holding down the mouse wheel. Panning always happens perpendicular to the viewing direction. So if you pan from the top you move in XY plane. If you pan from the front you pan in XZ plane.

Zooming (to mouse)

You can use the mouse wheel to zoom your window. When you move your mouse you will notice the view zooms to your mouse. This allows you to inspect certain parts of your model more easily.

Viewing perspective

In the toolbar there are 5 blue cubes to change your viewing perspective. Ctrl + p is a handy shortcuts to remember for resetting your 3D View.

  • Perspective view Ctrl + p
  • Left view Ctrl + l
  • Front view Ctrl + f
  • Top view Ctrl + t
  • Bottom view Ctrl + b

View modes

The program features 4 different view modes

  • Shaded: draws the only the surface without borders F5
  • Wireframe: draws only the triangle bordersF6
  • Filled frame: draws the mesh including all triangles.F7
  • Transparent: draws the mesh transparent. In this mode you can only select supports/infills/holes etc. but not the mesh it self. This helps you to select difficult to select parts. After several commands (hollowing/infill) the program switches to transparent view mode in order to show you the generated features. F8

Keyboard shortcuts

Every program can be operated must faster when the operator knows the shortcuts. The software has lots of build in keyboard shortcuts to quickly operate it. The list below is also included in the program under 'help'. Additionally many tooltips in the program also show you the keyboard combination.

Object manipulation
Shift+mouse translation    Gridsnap on when moving an object
Shift+mouse rotation       Rotation snap on (default 45 degrees)
Arrow keys                 Move object in X (left/right) and Y (top/down)
Shift+arrow keys           Rotate object in XY plane
Ctrl+C		           Copy
Ctrl+V		           Paste
Delete		           Delete part (or entire selected support)
Enter       		   Confirm current open command (i.e. place support)
ESC		           Cancel current open command
Ctrl+Z		           Undo
Ctrl+Y		           Redo
File management
Ctrl+N		New file
Ctrl+O		Open file
Ctrl+S		Save file
Ctrl+T		Top view
Ctrl+B		Bottom view
Ctrl+P		Perspective view
Ctrl+L		Left view
Ctrl+F		Front view
F5              Shaded view
F6              Wireframe view
F7              Filled frame view
F8              Transparent view
Object selection
Click                   Select object
Click+Shift	        Add object to selection (+1)
Click+Ctrl	        Remove object from selection (-1)
Drag mouse              Select 1 or multiple parts
Drag mouse + shift      Select 1 or multiple supports (but no part itself)
Ctrl+A		        Select all parts
Ctrl+D		        Deselect all parts
Triangle selection mode
Click               Add a single triangle
Click + shift       Add multiple triangels (without being asked to select the entire critial)
Drag mouse          Add multiple triangles
Drag mouse + shift  Select multiple added triangles (turn yellow)
Click existing      Select single triangles
Delete              Deletes selected triangles
Support mode
Delete	 	Delete selected parts only.
Ctrl+Delete	Delete entire selected support (also if just selecting 1 subpart)
Ctrl+Q		Toggle to single support mode
Ctrl+W		Toggle line view mode
Ctrl+E		Toggle point view mode

Opening files

Difference between New/Import/Open

  • 'New' will open a blank file. It will first check if you would like to save previous work.
  • 'Import' will import any file into the existing workspace.
  • 'Open' will open any select file into a new workspace. It will first check if you would like to save your previous work. This is similar as 'New file'.

Supported file formats (opening/importing)
  • .stl(Stereolithography fil) The standard file for 3d printing. Binary stl files open significantly faster due to faster reading.
  • .ply (Polygon file format) Used in some 3d scanners & dental industry
  • .amf (Additive manufacturing file format). A zipped xml format
  • .slc (Slice file). A binary file consisting of 2D Curves at different Z levels. Can be converted to PNG slices after import. Can't be converted to mesh.
  • .obj (Wavefront .obj file) Used in the animation industry. When importing them the program only reads the triangles. Other polygons are converted back to 1 or multiple triangles. Textures are ignored.
  • project file (The program's own project files) project files are files which contain objects and supports created by the software. You can use this to open previous print jobs to edit/process them again.
  • .gcode (GCode file) GCode files contain XYZ coordinates for controlling your FDM/SLA machine. You can import the file to check what you are about to print.
  • .svg (Standard vector graphics). .Svg is a ascii file format to store coordinates. It might be handy to view what you are exporting. Some machine require Svg files. This can be either all layers in 1 file or one file per layer. You can import 1 file at a time.
Import file special

There are some special cases of files that might different/extra import routines. In order keep normal imports simple we've separated these out in a special import menu item. Currently the following special imports are available:

  • Materialise magics thin supports: this importer allows you to import Materialise Magics generated support structures that have 0 thickness. The program will ask you to give in a thickness and generates a thickness for the support parts.
Batch processing

The batch processor give you the ability to prepare multiple files at once for printing. It give you the following options:

  • Copy amount: if different then 1 the part will be copied for you
  • Auto orientation: choose a way of auto orienting your parts
  • Support profile: pick any of your defined automatic support profiles. You can also leave them unsupported
  • Auto layout: nest your parts on the build table with the selected algoritm.

Opening large files

Why are .stl files large?

When creating 3d objects in CAD programs one usually creates multiple meshes. Each mesh surface consisting of a variety of shapes, but mostly triangles and quads. An object can for example have 10 different meshes where each mesh has 1 million faces. This is not a problem for most CAD software packages and your GPU since each separate object only has to deal with 1 million faces.

When you export your object to an .stl file all meshes are joined into 1 big list of triangles by definition of the .stl file format. When writing the file there is no problem, each triangle is exported one mesh after another.

The result is 1 .stl file with all triangles but without any topology information and with all vertices stored per face (without vertex indexing). That is, there is no information in the .stl file which indicates different meshes and if 2 faces share a vertex, it is stored twice!

It is left up to the importing program to interpret the different meshes and index all vertices.

Why is reading large .stl files problematic

Reading in large files is problematic because the reading program needs to do 2 things:

  1. Index all vertices. For this it needs a large array (lots of memory) to place the initially read vertices.
  2. the software needs to detect separate meshes from 1 list of triangles. It does this by indexing neighbours. Again it needs a large array (lots of memory) for this.
It is up to your operating system and hardware how much memory the program is given.

Handling tips for large .stl files

The program is tested for .stl files up to 500mb. Any larger might result in unstable behaviour. We've put together some tips to prevent large .stl files.

  1. Only export .stl's from your CAD package in a resolution that your printer supports. Any more detail might be unnecessary file size.
  2. Don't try to import all your models as 1 .stl file. Import as single files and then nest your build job in this program.
  3. Use tools as 'ReduceMesh' in Rhino3D or similar programs to reduce the size of your mesh. Usually they come with 'accuracy' settings that can prevent changes in geometry.
  4. Make sure you are using binary .stl's. These take up a lot less memory

The general take away is that the more you improve the quality of your mesh and reduce it's size. The faster/better will supporting and slicing functionality work.

Saving files

Difference between Export selected/Save/Save as

  • 'Export selected' will only export selected objects
  • 'Save' will save to the currently open file location (visible in title bar)
  • 'Save as' allows you to choose save location
  • 'Export to program as .stl' will show you a list of available programs that are able to open .stl files. You can export your work directly.

Supported file formats (saving/exporting)
  • .stl(Stereolithography file) The standard file for 3d printing. The program can export to binary or ascii stl format. Supports will be exported as well as disjoint meshes. Needless to say information about connections will be lost.
  • .ply (Polygon file format) Used in some 3d scanners & dental industry
  • .amf (Additive manufacturing file format). A zipped xml format
  • .slc (Slice file). The program can export your job to a slice file when you give in a layer thickness.
  • .obj (Wavefront .obj file) Similar to .stl also .obj files can be exported. These are created with only triangles and no textures.
  • project file (The program's own project files) Project files contain the entire structure of created objects. Use this if you want to continue working on a print job later on.
  • .gcode (GCode file) GCode files contain XYZ coordinates for controlling your SLA machine. All settings are residing inside the print profiles. Keep in mind your export origin required by your printer.
  • .svg (Standard vector graphics). .Svg is a ascii file format to store coordinates. Some printers require this format. There are several options for storing your shapes as 'polygon' or 'path' elements and using 1 file per layer or all layers in 1 file.

Moving & copying items

Next to the object manipulator (gumball), the software provides multiple options to orient your objects. They are available under the purple icons in the toolbar. They will be discussed shortly here.

Gumball (object manipulator)

When selecting an object with your mouse an object manipulator will show. With this manipulator you can drag the object in X,Y or Z axis. Alternatively you can drag the selected object in one of the three planes or rotate around one of the world axis. For some supports nodes a purple arrow will show when selected; with this you can scale the support node at that point. Upon releasing the mouse the connected items will scale automatically.

Move to 0, 5 or 10 mm

These buttons allow you to quickly move your object to a fixed height from the build platform. You can use absolute translation if you need another specific amount.


This centers the selection on your build table and on z=0


You can add relative translations or translate your selection to an absolute position.


You can add rotations in 3 different axis to the selected objects.


For scaling there are 3 options.

  • Scale factor: this allows you to scale all directions or a single direction by a factor.
  • To fixed size: this allows scaling to a fixed size. Uncheck the box at the bottom to leave the other dimensions unchanged. Otherwise they will scale with the same factor.
  • To build table: use this option to scale to a maximum number of objects. The algorithm checks the boundingbox of your object minus a padding and scales towards the number of desired copies.
Your supports or any other attached objects to the part are scaled as well.


You can copy objects easily by giving in the number of desired total copies. Automatic placement will copy the amount in a square raster. Select manual array placement if you would like a different orientation. The copies that are going to be created show in red boxes on the build plate.

Orient to face

The orient to face button allows you to orient your object to a specific mesh face. Select the face to orient your object.


Mirroring allows you to create a mirror of the part in a chosen axis. This can be handy if you are printing mechanical parts that need a mirrored duplicate. You only have to support your part once in this case, saving you work.


There are 2 nesting algoritms included in the program. The first is a regular rectangular algoritm that is fast. It uses the bounding box of each object to place objects. The second is a more advanced irregular shape algoritm. This algoritm determines how irregular shaped parts are best positioned together to minimize the total area. You can give in how many rotations per part should be tried. More rotations means equally more computation time. After nesting you might want to fine tune the position of your parts. You can do this very handy from the top view with the arrow keys (see keyboard shortcuts) or of course with the object manipulator.

Multi floor

If you have a large vertical print area on your print table and your parts are small you can add one or more floors. Floors help you to increase the output of your printer. You can use the tool to add a floor. A popup box will appear that will present various options for generating a floor. The floor is generated according to a recursive algoritm that generates a structure without large overhangs. Secondly it has a 'weakness' over its diagonals that allows you to break away the structure more easily.

Each part in your build volume is fixed to one floor only. This will determine to which Z coordinate the supports are created but also on which level the part is nested. You can switch the floor for a part by using the 'switch to floor' tool:

Mesh errors and diagnosis

When a part is imported and read a subset of possible errors is checked. (Naked edges, Non manifold edges, degenerate faces and duplicate faces) If errors are detected that might cause the print to fail the software will add a yellow exclamation mark to your part. When in support mode, a full mesh diagnosis can be run on the part. You find the mesh diagnosis in the tab next to the supporting tabs. By clicking the eye icon behind each error you can view error in your part. We describe all possible mesh errors shortly below.

Naked edges and holes

Naked edges are edges that only have 1 connected triangle face. This means there is a hole in the mesh. This might result in artifacts during slicing.

Planar holes are flat holes that reside in 1 plane. All naked edges on the border are connected. They are easily fixed by triangulation of the hole.

Non planar holes have edges that lie in different planes. Hence they are harder to repair automatically.

Non manifold edges

Non manifold edges are edges that have 3 or more faces adjacent to it. They might result in slicing errors but not necessarily.

Intersecting faces

Intersecting faces means the faces intersect. This is not necessarily a bad thing. It can mean you have multiple disjoint parts or self intersecting parts.

Inverted normals

Faces with inverted normals pose a problem during slicing. The slice engine won't know if a face is representing the inside or outside of the model.

Degenerate faces

Degenerate faces have 2 or 3 vertices that are equal. They are not visible.

Duplicate faces

Duplicate faces share exactly the same vertices. They may cause problems during slicing routines.

Disjoint parts

Disjoint parts can existing in a single mesh. This is not necessarily a problem. However it may become a problem with further operations like hollowing when multiple self intersections can occur.

Mesh editing

When in support mode tools can be used to manipulate the mesh. We describe them here below.

Shrink wrap

The shrink wrap function will attempt to wrap your mesh inside a new mesh closely approximating the surface of the existing mesh. With the accuracy parameter you control the size of the sampling grid that is used to generate the replacement surface. The program indicates what your approximate mesh triangle size will be with the used accuracy setting. If your accuracy is low the calculation goes faster. Please note that if your accuracy is to low you might lose detail.


The hollow function hollows out your model by inserting an offset on the inside. This will allows you to print shells and save lots of material. (Most resin printers don't handle illuminating larges cross sections well). With the thickness parameter you determine the wall thickness. The thinner the wall, the faster the calculation. The accuracy parameter again controls the sampling grid. If your accuracy is low the calculation goes faster. Please note that if your accuracy is to low you might lose detail.

Optionally you can reduce the generated mesh to save memory and computation time further on. Please note; a too high level or reduction might lead to new intersections of surfaces with the original mesh. (i.e. cutting corners).

To see the result of your hollow operation you can leave the checkbox 'switch to transparent viewmode' checked.

Reduce mesh

Reducing your mesh speeds up further computation. Certainly for large meshes (50mb+) it might be usefull to reduce your mesh. You can choose to reduce by triangles or vertices. Dialog indicates how many triangle/vertices will be removed. The algorithm does this by minimizing the difference (error) between the new and old mesh.

Add drainage hole

Once you hollowed your object you might want to add holes to let resin escape during printing. This is done with the add hole tool. Once you select the tool you enter 'add hole mode'. Click the location where you want to place a hole to add a hole. A dialog appears asking you for inner and outer diameter. Once you generate the hole a 'cylinder' will appear. During slicing this is where holes are added in your slices.

You can still drag and scale your hole after generating it. To do that just select it and use the object manipulator. All holes are added in the part tree as well under 'Drainage holes'.

Add (lattice) infill

With the infill function you are able to add a lattice to the print. You can select on the diameter of the lattice and the cell size.

If you leave the checkbox 'join infill in 1 mesh' checked (recommended) then the infill is joined into 1 mesh. If you uncheck it then each part of the lattice will be added as an individual beam. This means you are able to edit the parts individually. When in transparent view mode you can select (and delete) the lattice inside the object.

Split disjoint mesh

The split disjoint mesh command splits a part into it's disjoint parts. It analyses your parts triangles and detects which parts of the object are separate shells. You can use this if you want to import meshes that are multiple parts combined or if you want fine tune a combined part. Please note that you can't use this on parts which have supports or other attached objects

Join disjoint mesh

The join disjoint mesh command joins multiple parts in 1 single part. You can use this for example after first splitting your part; editing and then joining it together again. Please note that this can't be run on parts with supports or other attached objects.


For many single material printers you need some kind of supports to allow for printing. The software is optimized to provide good supports for printing in resin materials.

Support mode

You can go into 'support mode' by clicking the support mode button next to each object. Other objects will blend out and only the current object is visible.

You will notice that in the toolbar the support icons are now enabled and you can start to place supports.

Adding supports manually

When you click a support type button to add a support it will depend on the support what you need to do next to place the support. Most of the time a tip on what do next will show up in the status bar on the bottom of the screen.

Adding supports automatically

The software contains advanced algorithms to make generating supports as easy as possible. You find the support generation in the tabs 'support generation (basic/advanced)' on the right of the screen. The controls become active once in support mode.

Support types

Single support

The single support is the most simple support. It has a foot, main column and connecting cylinder to the object. Select the object to place supports. When pressing enter you generate all meshes. When you select a single support you can edit it's properties.

Lattice support

The lattice support is handy when you want to create a strong but thin support structure for large objects. Select multiple points and press enter to create the geometry. The lattice support has some special options that need a bit more explanation.

  • All sizes of the lattice can be edited.
  • The gridsize regulates the distance between joints.
  • The diagonals checkbox determines if shores are added in XY,X and Y direction or only in X and Y.
  • The alternating checkbox determines if shores in X and Y direction are alternating. This saves you a lot of material.
  • Intersection checking and removal can be activated if you would like an intersectioncheck to run after generation of the geometry.

Internal support

The internal support can be used to support internal cavities. Select multiple points and press enter to generate the geometry.

Tree support

The tree support acts similar to the single support. However it has multiple branches that can support multiple parts of the model. It saves material and makes post processing quicker by reducing the amount of feet.

Internal tree support

The internal tree support is very handy for rings that are oriented vertically. With this support you can create start shaped supports inside a ring.

Volume support

This support generates a solid volume below a critical area. Select a critical area by selecting a triangle. Hold the shift select multiple triangles suppressing the message to select an entire critical area. Once selected you can select the triangles again individually to delete them. This way you can very accurately decide which parts of your model to support. You can also drag select with your mouse to select an area of triangles at once. Hold the shift key and drag to select them again for deletion. Press enter to generate the geometry.

Base plate support

The base plate support generates a base plate at the bottom of your object. There are different shapes available. You can change the shape after placing the support by selecting the base plate.

  • Square
  • Inner circle
  • Outer circle
  • Object contour shape
  • Entire build table
Additionally there is the option to create holes with a specified diameter into your base plate. The holes will be added on a grid as long as they are within the base plate surface.

Split style lattice support

The automatic support generation has multiple options for what supports to generate. The default being 'splits style lattice'. This support type is very efficent for resin 3d printers. The branches are split from the top down creating a unique scaffolding structure. The generation parameters are edited in the support generation tabs.

Base connector

The base connector can be added to multiple parts on your build table. It can only be added when you are not inside supporting view mode. Select multiple parts and click the connector button to add this item. It will help you to easily peel all your parts from your build table.

Support generation (basic)

Once in supporting mode the support generation tabs and tools in the toolbar activate. This allows you to run the support algorithms on the selected object.

Generate supports button

This button runs the supporting algorithm on your mesh. Depending on the size of the mesh this takes from 1 second to several seconds. You can decrease the time by first reducing your mesh.

Edit points button

Once you generated your support points you can click 'edit points' to edit the generated points. Click on an existing point will remove it. Clicking again on the model will add a point at that precise location. Click 'apply' to generate the supports or press Esc to cancel.

Support profiles

Just below the support generation buttons there is a dropdown with automatic support profiles. By default there is 1 profile with presets. You can edit/save/delete new profiles by clicking the edit button. If you change a value and would like it to be saved, press the 'save' button.

Density (%)

The density percentage is a multiplier for how many support points will be generated. Together with the tip diameter it results in a density (mm) that is absolute to your model. Critical creases/surfaces will be sampled with this density.

Tip diameter (mm)

The diameter in millimeter of the tip of connecting to your object. This influences the absolute density at which points are generated. Depending on your printer you can go as low as 0.1mm. The smaller the easier supports are removed.

Critical build angle (degrees)

The critical build angle determines which surfaces/creases are critical. Critical parts receive support points. This setting typically depends on your printer but a start would be 30 degrees. If you choose this value to low your prints might fail.

Sampling strategy

The way the software adds support points can also be chosen. For certain models it might not be useful to support surface but only to look at creases and vice versa.

  • Creases & surfaces (places points at critical creases and critical surfaces)
  • Creases only (best for geometrical shapes only like cubes, certain but not all machine parts etc.)
  • Surface only (best for natural objects or highly detailed meshes)

Surface sampling

This determines the method that is used for generating support points on a surface. A random placement is very fast. For placing the supports on a grid a slower calculation runs so this might take some more time. For some printers a regular interval between supports can produce better prints.


The strategy shows which options you have for automatically adding supports. It can be one of the following:

  • Split style lattice supports (recommended)
  • Single supports
  • Lattice supports

Density main columns (mm)

The density of the main columns is a variable that is used in splitting/combining algorithms. It determines what the maximum distance between 2 resulting columns can be. I.e. how far the combining/splitting algorithm will continue. Setting this value to large might result in to view support columns leading to instability. A low value will lead to more columns and more material usage

Pole diameter (mm)

In the splitting/combining algorithms this is the starting diameter for a column

Pole widening factor

This factor multiplies the diameter of columns at the bottom of the build table. Hence increasing your column strength. Please note the full multiplication is only reached at the highest column. The others are scaled down proportionally to their length. This keeps all columns proportionally the same.

Place above base (mm)

If this option is checked the support generation places your object at an exact height above the base.

Internal supports enabled

This option allows you to turn off any internal supports. This might be handy when you have an infill generated already for hollow parts.

Height of the foot

This option adapts the height of the feet of the generated supports.

Absolute foot sizes

This option allows you to use an absolute size for the feet of the automatically generated supports. This gives you a little more flexibility when peeling your models from the build platform.

Base plate

Check this option if you would like to add a base plate support right after generation. This can be added later on as well.

Support generation (advanced)

The advanced support generation tab gives you a more options to fine tune your supports.

Ignore small items

The support generation algorithm works by detecting amongst others creases and surfaces that are under a critical angle and need support. With these to options you can select at which size it should ignore these features. This might be handy if you have a large model with some small features at the bottom like a text imprint.

Advanced settings

The advanced settings contain 2 handy settings. Discussed here shortly:

  • Crease offset: this will place your contact tips of your supports on a small distance from sharp creases in your part. This will enable you to print very sharp creases
  • Thickness multiplier of the top joint: this will make your top joint (just before the tip) bigger by this factor. This increases the strength of your connection to your object to reduce warping
  • Length of the first beam: this has a big influence on how far your supports are from your model. It will depend a bit per model what is best.

Edit critical creases and surfaces

With this feature you gain fine grained control over which parts are auto-supported. Click 'edit critical parts' to select creases and surfaces and resample them with new support points. You will notice creases will show up as 'dashed' green lines. Critical surfaces as green surfaces. When you select them they turn blue and below the 'edit' button it shows you what you have selected. You can also delete features. Press Esc to cancel or 'apply' to recalculate supports.

Internal support settings

The internal support settings allow for more fine grained control over the automatically generated internal supports. Internal supports are categorized in 2 types based on their length; small or large. For both types you can set how many feet the algoritm should try to add. With more feet you create more stability for your supports but the downside is more post processing time.

Support segmentation

Segmentation allows you to create your supports in multiple parts. The main reason for this is to make support removal more easy.

Editing supports

There are various ways of editing your supports. We discuss them here.

Change sizes/shapes

For all support types you can select the support in the 3D view. Now the details tab on the right of the screen will show you what attributes you can change. Usually supports don't need to be regenerated but can be scaled. Most of the times you can change the tip diameter or support diameter as they don't determine generated positioning of the supports.

Dragging supports

Sometimes supports are not positioned like you want. You can drag each of the supports in the 3d view. To drag just select a part of the support and move the gumball on one of the axis. You will notice the attached parts will move accordingly.

Additionally you can switch to point-line mode to view supports as points connected by lines. It's worth noting that you can move nodes as well as line segments. Both will lead to connected parts being moved as well.

Editing in points mode

You can also change the viewing mode to 'point' mode. This will only show the support's contact points on the object. You can drag these freely and they will snap back to the object to stay attached.

Editing in intersection mode

When you switch to intersection mode only the supports that are still intersecting with the part are drawn as a mesh. This allows you to easily see where there are still intersections.

Deleting parts of the support

You can delete indivual parts of a support by selecting it and then pressing delete. You can also hold ctrl to select more or hold shift to deselect by one. You can also drag your mouse, and hold shift, to select multple parts of the suppot at once.

Delete entire support

To delete an entire support you press ctrl + delete when only a part of the support structure is selected. Alternatively you can select the entire support by clicking on it in the part tree; it highlights as a whole before you press delete.

Remove all supports from a part

The toolbar also contains an icon to remove all supports from the current part at once. Use this if you want to start over.

Edit support generated points

Once you run support generation you are able to edit points. See topic 'support generation (basic)'

Edit support generated points by surface/crease

Once you run support generation you are able to edit/resample/delete critical surfaces/creases. See topic 'support generation (advanced)'

Support optimization

Flattening supports

Being able to edit all parts of a support comes at a performance cost. Each part needs to be drawn separately by the grahpics cards which costs a certain amount of time.

In order to make this process more efficient it is recommended that when you are done you 'flatten' supports to 1 mesh. You can do this with the tool button in the supporting toolbar. After flattening the support will turn grey indicating it's 1 mesh. With large objects you will notice the display will be much faster.

Slicing pixel based

Start slicing

Slicing is started by pressing the green button in the toolbar. You are first asked to select a folder to place the sliceing folder. To make sure you are slicing to the desired machine size you will receive a pop-up to double check these settings. Additionally an overview is given of all models/volumes in the building area. At the bottom you can set your slice folder name/description and optionally zip it when done. Further slice settings are discussed under 'configuration'. When all settings are as desired you can press the start button.

During slicing

The slice progress is displayed in the popup dialog. Please try not to edit/modify the slice folder during slicing or place them in a dropbox/googledrive/onedrive as this might result in unexpected errors.

Stop slicing

You can cancel the slicing operation by pressing the cancel button in the dialog.

External program

With the tool you can start an external program. An example usage could be a print controller that you use to control your machine from your PC. The path to this program is set in the print profile. If the path is set, the program will try to start up the program automatically after slicing has completed. The first argument given to the external program is the full path to the slice result. (zip or folder)

Nano DLP connection

The icon leads you to an integrated NanoDLP connection. If your printer is running a version of NanoDLP then chances are you can pretty easily connect to it. Once you know the IP address you can load the resin profiles available on your printer. Next you can choose to upload in SLC (vector format) or upload the entire STL. Additionally you can upload PNG's (most efficient); but for this to be available you first need to slice your print job.

The following defaults are set in the configuration at machine level:

  • If to start up the NanoDLP connection after slicing
  • The default IP Address

Slicing pixel based

Vector based slicing

The program contains a very robust pixel based slice engine. However there is also the option to slice into a vector based format if your printer requires this. Currently this is supported through the 'save as', 'export' commands from the file menu.

.Slc & .Svg

Both .Slc and .Svg are vector based formats where the latter is an human readable ascii file. Both types describe the contours in the XY plane for different layers. The program booleans all contours and makes sure the direction are according to the right-hand coordinate rule. Positive parts are in CCW direction. Holes are CW direction.

.GCode for SLA machines

For SLA machines there is a .GCode export. In addition to providing cross section contours the GCode also contains a number of offsets of your outer walls and a hatching pattern. Both can be set with various parameters.


Edit configuration

By opening the configuration via file->configuration you can change the program's settings. Each section is described here.

Resetting the configuration

You can reset the configuration file at any time by clicking 'reset configuration' in the file menu. This will reset the entire configuration to default. It will ask you if you would like to keep your existing machine configurations. If you answer yes, machines won't be deleted.

Import/export the configuration

Over the file menu you can export/import your configuration quickly. This will allows you to give your computers all the same configuration file or share your settings with others.

Inspect configuration manually (advanced)

In the rare case that you would like to inspect the configuration file manually you can. It is stored as .xml under a folder that looks like: C:\Users\{YOUR_USER}\AppData\Roaming\3D_PROGRAM3D_{741D228E-AC07-40C2-A9DC-560B18A54F03}\.

Warning: changing values in the configuration manually might lead to unexpected crashes or behaviour. Always make a backup of your configuration xml file first!


General settings

The interface language can be changed here. A restart is required once the language is changed. For the build table you can configure whether or not the building box should be drawn. The gridsize on the platform is configurable as is the axis in the middle of the platform.

Grid snap

Grid snap allows you to snap your parts to an invisible grid with the specified dimension. This is handy when placing multiple parts that you would like on an imaginary grid to keep your build table organized. For the rotational grid snap you can define the angle to which it should snap. The icon below the slice bar in the layout is an alternative toggle to switch it on or off.

Right click menu

The right click menu for parts can be disabled here. You can also set an alternative time for it to show up. The right click menu only shows up if the time between mouse-down and mouse-up is smaller than this value. So if you click very fast, you can lower this value, if you feel the right click menu shows up on times you intend to navigate instead.


The color settings can be changed to your liking. For objects you can choose to random color them when they are imported.

Import options

The import options allow you to change what happens when a part is imported.


The software is very dependent on the graphics hardware that you use. It should work on low end and high end systems The graphics section of the configuration shows the detected graphics card (GPU).

Mesh detail

With the mesh details option you can increase the amount of detail with which the supports are generated. A higher detail will create much smoother shapes. Of course this will be a little heavier in memory usage.

Anti aliasing

You can activate anti aliasing here for having a more smooth 3D View. This setting doesn't affect any slice output.

Use newer Windows media libraries for slicing

By default the slicer uses GDI+ windows libraries to draw the slices to .png images. These are rather old libraries that can sometimes behave strangely or throw random exceptions. Unfortunately there are many online reports of this behaviour.

In order to overcome these shortcoming Windows media libraries were developed. They are integrated into the slicer and can be used as well. For higher resolutions (3000px and higher) it is recommended to use these Windows media libraries instead for slice generation.

Machine settings

Machines are your physical printers. You can copy machines, import/export them (.xml) and remove them again. There needs to be at least 1 machine.

Build volume

Each machine has a X,Y and Z size in mm. This is your maximum build size that is displayed in the 3D editor as build platform

Dead zone

If you would like to introduce some margin from the edges of your build platform you can introduce a dead zone. Enter the amount in mm from each side to have a grey border shown in the build platform. A warning will show if you move objects in the dead zone.

Export origin

The export origin is important when you are exporting files that have coordinates. This can be .stl files, but more probable vector based slices. It depends on your machine's implementation how it reads these files. You can quickly set it to each of the corners by clicking the icons with the red dots. Both values set to 0 means centered.

Print profiles

Each machine can have 1 or more print profiles. You can use print profiles as different resin profiles, different layer heights, resolutions etc..

Nano DLP Configuration

The icon leads you to an integrated NanoDLP connection. The following defaults are set in the configuration at machine level:

  • If to start up the NanoDLP connection after slicing
  • The default IP Address

Stl Link

With the Stl Link function you can perform a 1 click export to another slicing/CAM/CAD package of your choice. A common use scenario is if your machine has a closed file format that can only be created with the machines default slicer. You can setup the path to your machines default slicer then as Stl Link. This allows you to export your geometry including supports of all models with 1 click.

It works by exporting all your geometry at once and then calling the other program giving your total .stl as path.

Support settings

Each machine has settings for each type of support. You can find them by clicking the support icons in the settings tree.

Machine print/material profiles

Average layer buid time (ms)

This value is used in the build time estimates shown in the interface.

Resolution (pixels and micrometer)

This is where you enter the resolution of your slices. Together with the machine's build size this determines the XY resolution of your print. If you make a mistake the program will warn you in case X resolution is not equal to Y resolution. The Z resolution is also entered here in micrometers. This is used during slicing each step and also in the slice bar on the left of the 3D window.

Slice export options

In this tab you can set several output parameters for your slice job. The macro's allow you to control what slice file & folder names are generated. You can zip the output and decide if you want to export 8,24,32 bit images. 8 bit is recommended and smallest. There are 3 export modes:

  • Images only: this will only export slice images
  • Images & print info: this will export slices, print information, manifest with slice file names, preview image
  • CWS: this will export in a format comparable to creation workshop software. Use this if your printer doesn't accept other formats.
  • Photon (only in some versions of the software): this will export to a format for the anycubic photon printer.

DLP Options

These are options specific to DLP Printing techniques. You can set the critical build angle and a non-critical build angle. The first will be highlighted red in your models, the latter will be yellow. You can use the non-critical surfaces as well for supporting.

The spatial mask you configure with the mask wizzard can be applied here.

Diamond shaped pixel slicing will allow you to slice your buildplate under a 45 degree rotation. (Only use this if you know what you are doing!) Your slices will become square and your printer needs to accomodate this. The reason to use this would be to prevent certain artifacts from showing up in your prints if you use a DMD chip with diamond pixel shape orientation. An excellent article on this by Karl Guttag: here

You can also choose to select an external program to start after the slicer is done slicing. This is done from the installation folder and can be handy if you would like to have postprocessing for slices i.e. The first argument (string) passed to the program is the full path to the slicejob.

GCode settings

If you would like the program to export GCode settings to control your Marlin/Grbl based DLP printer that is possible. This tab gives you the option to set exposure times, lift distances and speeds. Together with the 'Gcode script' tab you are able to precisely generate the GCode that you need.

GCode script

This tab gives you the option to set what the GCode scripts should be that are exported with your print job.

  • Use the 'help' button to get a description of available variables and scripting options
  • Use 'Test GCode Formulas' to check if you scripts compile against the GCode parser
  • Use 'Export GCode' to export the gcode for a number of slices, i.e. if you want to test it on your machine.


This tab gives you the option to register some settings about your print material


If you are using an SLA printer this tab contains the header, slice and footer gcode parts.

SLA Slice settings

This tab contains settings for how the GCode for SLA printers is being exported. They will be discussed shortly:

  • Spot size: this value determines the spacing of your outer walls.
  • Wall thickness: this value determines how many contours (walls) are being drawn
  • Infill and wall overlap distance: your infill can overlap your wall to ensure contact.
  • Add smooth arches in sharp corners: activate this to increase sharpness of corners by creating smooth curves between them. The Laser has a longer path.
  • Infill densities: for both the inside and top and bottom surfaces you can set the density of the hatching
  • Speeds: these values determine the speed that is being output to the GCode file. In case of SLA it should be in correspondance to your layer thickness.

SLA Correction values

This tab gives you the option to apply an absolute correction to your SLA export. Values are entered over the 2 main axis of your build table. Corrections are absolute and lineary interpolated between given values.

Light mask calibration

DLP Light mask

Depending on your printer type you might get a better print when applying a mask over your slices. This light mask decreases white to grey pixels in area's where your light intensity is high. The result is a more even distribution of light intensity when you print. This wizard helps you to create a basic light mask by 2 calibration prints.

Custom slice mask

You can also choose to upload your own mask image that will be overlayed on the slices. .png Images in 24 or 32 bits are accepted. Make sure your mask has the same pixel size as your slices otherwise an error message will appear.


The calibration mask wizard guides you through the process of creating your own light mask based on measurements from your actual machine.

License activation

The program comes with a 30 day free full featured trial license. If you like our software you can support our development by buying a license. Each license can be activated on 1 or 2 PCs depending on the license type.


License activation requires an internet connection to validate your license. Please enter the license without any text/title/enters/newline/spaces. If you are not sure if your email program modified the license string you can always open the license in notepad to make sure there are no enters/spaces.

Installing a newer version

Installing a newer version of the program can be done without removing the license. Just uninstall the current version and install the new version. The license will stay in place.

Moving to another computer

As of version you can move your license to another computer. Go to 'Help -> remove license' to remove the license and deactivate your computer. This requires internet connection. The program will close afterwards. Now you can activate your license on another computer.

Bug reporting

We take great care in writing our software. Nevertheless bugs can happen and we strive to fix them as fast as possible.

Program crashes

The program contains a library to detect program crashes. When a crash happens a report window will open with the question to report it or not. Please do. We receive a list of where in the code the bug happened. We don't receive any model data.

Other malfunction

If you see non fatal things that are wrong. Please notify use by email. All feedback is highly welcome.