Skip to navigation

3D Printing Software

Different 3D printing software programs can vary greatly, but all have the same core elements and parse a unified file type. There are four key steps to go from a part model to a 3D printed part: importing the part file from CAD into the software, turning that imported part file into a printable file, sending one or more of these files to your printer, and managing your printer(s) to maximize uptime and throughput.


From CAD to STL


The first step in 3D printing is creating a file that 3D printing software can parse. While traditional subtractive machining relies on a combination of part drawings and Computer Aided Machining (CAM) files, 3D printers accept STL files. These files store 3D data by breaking your part’s surfaces up into a mesh of triangles, and can be exported from virtually any CAD program. When exporting these files, there are a couple of important factors to take into account:


Mesh quality vs file size: When exporting STLs, CAD programs allow you to determine the density of a triangle mesh. Large meshes yield smaller file sizes that process faster, but create parts that can be faceted and inaccurate. Small meshes make realistic, accurate parts, but yield massive files that may be difficult for your 3D printing software to process. Knowing the use of your part can inform what to prioritize.


STL resolution is an important factor when exporting a part for use in 3D printing software.
A line drawing of two halves of a sphere saved at different STL resolutions. The left side of the sphere is saved at a low resolution, while the right side is saved at a high resolution.

Multibody parts and assemblies: If you’re working with a multibody part or assembly, make sure that you export each part individually. If you export the entire file at once, the resultant STL often fixes both parts relative to each other, making them impossible to print.


If you don’t use CAD but still want to 3D print a part, there are several large online repositories of printable STL files available for free download.


Slicing: from solid body to printable part


3D printers rely on toolpaths to execute their tasks. These paths are automatically generated by a slicer in all 3D printing software programs. A slicer takes a part, divides it into “layers” parallel to a user provided reference plane, and generates toolpaths for the print head to follow on each layer while extruding material. Included in these toolpaths is “support material”: automatically generated sacrificial sections that ensure suspended or cantilevered overhang sections of your part are supported during printing. While the entire process is automatic, there are some important parameters that you can control:


Part orientation: The most important parameter to consider when setting up a part for printing is its orientation within the printer. Part orientation can have a massive effect on both print success and part strength, and is often a balance between strength needs, critical dimensions, and bed contact. 3D printed parts are stronger and more precise with their critical elements built parallel to the print bed. Additionally, orienting the part so that the largest face lies on the print bed minimizes supports and improves print success.


Selecting the build orientation in your 3D printing software impacts the way the 3D slicer generates toolpaths.
In 3D printing software you can control how your part is oriented on the print bed.

Layer height: Besides orienting your part, the most important factor that you can control is layer height—the thickness of the layers that your part slices. Taller layers yield a less accurate, lower resolution part that prints faster, while shorter layers provide a more precise and detailed part that takes longer to print.


Layer height selection in 3D printing software impacts print resolution and time.
A smaller layer height will take longer to print, but delivers a more detailed print.

Part fill and shell: FFF 3D printed parts are very rarely solid — they’re most often shells with a celled infill. Printing with this geometry decreases both print time and material cost without sacrificing part strength. Markforged’s Eiger software defaults to a triangle fill, but you can change both the shape and size of the celled infill. Similarly, you can vary the number of layers at the top (roof), bottom (floor), and sides (walls) of a part.


3D printing software generates shells, infill, and toolpaths for continuous fiber.
A representation of the cross-section of a continuous-fiber reinforced 3D printed part.


Continuous fiber reinforcement: Markforged composite printers utilize a second nozzle to lay down continuous, long strand fibers into parts. You can control whether or not to use continuous fiber, how much to use, and how to lay it inside your part. To learn more about this, click here to try out our software for free.


Sending your part to your 3D printer


After your part is sliced, it’s ready to print. If you have multiple parts printing with the same material and layer height, you can lay them out together in a build. A build can have as many parts as can fit in the printer’s build volume, and is a great tool for organizing projects or parallelizing your 3D printing workflow.


You can send one or multiple parts to your 3D printer from your 3D printing software.
You can send one or multiple parts to a 3D printer once it is sliced.

After creating your build, it’s time to send the build file to the printer. For some machines, you’ll need to use an SD card or USB drive to physically transport the file. Markforged printers are internet connected, allowing you to digitally transmit your part over the internet. Once you’ve sent your part to your printer, you can monitor its progress from your computer.


Managing your 3D printer fleet


Effectively managing prints can double or even triple your 3D printer throughput. By planning your jobs to all finish during working hours, you can ensure that your printer is almost always running. To maximize your bandwidth, try a few simple things:


Time your prints strategically: The only hands-on part of the the 3D printing process is removing your part(s) from the print bed and resetting the printer. Maximize your print bandwidth by timing your prints to end while you’re near the printer so you can quickly and easily get the machine printing again. Print longer jobs overnight and shorter jobs during the day to make the most of non-working hours.


  • If your print time is 0–8 hrs (+X days), kick it off at the beginning of the workday
  • If your print time is 8–16 hrs (+X days), kick it off at the end of the workday
  • If your print time is 16–24 hrs (+X days), kick it off at the middle of the workday
You can use time estimates from your 3D printing software to maximize printer bandwidth.
Some examples of how you can schedule 3D prints to maximize machine bandwidth.

Use the weekend for your biggest parts: There are about 64 hours between the end of one work week and the beginning of the next. If you have a multi-day print, start it on a Friday to leverage as much of that bandwidth as possible.


Use builds to be strategic about print times: Builds are not only great for organizing projects—they’re also good for controlling print times. If your individual parts don’t fall into one of the optimized print times, combine them with other parts in the queue to make the print time work.