In the past five years, personal fabrication has become a major research area in human-computer interaction (HCI), with many new contributions every year. In this article, I explain one of its core technologies, 3D printing, with the goal of helping interested researchers get started. For a survey and roadmap of open research directions, please refer to  and to the corresponding website (http://hcie.csail.mit.edu/fabpub/), which provides a list of all the research papers published in the field.
A common misconception is that 3D printing is limited to the plastic extrusion process seen on today's popular consumer devices such as the MakerBot. In this process, plastic is extruded through a hot nozzle and deposited voxel by voxel (a physical pixel), layer by layer onto a build platform until the 3D object is complete. This is called fused deposition modeling (FDM).
The reason FDM technology entered the consumer market first is that its patents expired first: 3D printing is a technology developed in the 1980s with a variety of different processes and materials. In 2009 the first FDM patent ran out; only a few months later, the MakerBot Cubcake CNC appeared on the market. However, many more advanced technologies still have active patents and thus right now are available only in industry.
Another recently expired patent is that of stereolithography 3D printing, a process used, for example, in the Form2 3D printers. A liquid resin is poured into a tank. Then a laser (SLA 3D printing) or a projector (DLP 3D printing) selectively shines light onto the resin, which hardens it in these locations. Many other 3D-printing techniques will be available for startups soon. For instance, in inkjet 3D printing, an inkjet head releases a binder that selectively hardens powder in a powder bed. At the end of the process, users remove the object in a process that resembles an archaeological excavation. Metal printing works similarly: A laser selectively melts and fuses metal powder in a powder bed. Finally, layered-object manufacturing (LOM) can process materials that cannot be extruded, bound, or sintered. It takes entire sheets of material, such as a roll of fabric, cuts each sheet into a shape using a laser or other cutting device, and then stacks each layer to create the 3D object. Many more processes and materials exist (Figure 1), from machines that 3D print with felt to create entirely soft objects such as Teddybears, to 3D printers that can print glass.
|Figure 1. 3D printing with different materials: (left) a 3D-printed soft teddy bear ; (right) a 3D-printed glass vase .|
The words 3D printing and additive manufacturing are often used interchangeably; however, they are not the same. 3D printing is a subcategory of additive manufacturing. Additive manufacturing is any process that creates objects by iteratively adding material until the object is finished. 3D printing is a specific additive manufacturing process in that it has full control over the placement of every voxel in the 3D object, which lends it unlimited degrees of freedom and thus unlimited complexity in the objects it can build. This makes it a very powerful tool.
The traditional workflow consists of three steps: 3D modeling, slicing (preparing a model for fabrication), and 3D printing.
3D modeling. There are many different 3D editors with different modeling processes. The most accessible ones for novice users, such as TinkerCAD, use a process called solid modeling, in which users combine primitive shapes, such as cubes and spheres, and use Boolean operations, such as intersect, join, and subtract, to create a 3D model.
Other editors, such as SketchUp, use a process called surface modeling, in which users manipulate the faces, edges, and vertices of a 3D model. This allows for more expressive free-form shapes but, there is a drawback: Users can accidentally create invalid geometry, for instance, by creating a hole in the surface geometry, which goes against the watertight requirement of 3D printing (i.e., the geometry needs to be "manifold"). In solid modeling, water-tightness is always guaranteed, as it is an inherent property of the modeling process. Many tools exist to help analyze 3D models for defects and repair them for 3D printing, either as additional plugins for 3D editors such as the SketchUp Manifold plugin, or as separate programs, the most popular one being Autodesk Meshmixer.
Slicing. To prepare a model for 3D printing, users have to open the 3D model in a separate program called a slicer. Preparing a model for 3D printing includes steps such as generating the support material that is printed below the model geometry that has nothing underneath it (called an overhang), splitting the model into layers that the 3D printer will print one at a time, and selecting the materials with which the object will be printed. Each of these attributes has additional parameters. For instance, there are different types of support structures for different use cases: Each layer consists of not only a height but also a number of outlines (so-called shells) and the percentage of infill, a honeycomb pattern used inside the object instead of solid infill to save printing time. The slicer typically imports the 3D model in .stl file format (but other formats, such as the recently developed .amf, exist). For most 3D editors that do not have an .stl export built in, there are additional plugins that can be installed (e.g., Sketchup provides an .stl extension plugin).
The words 3D printing and additive manufacturing are often used interchangeably; however, they are not the same.
Fabrication. The slicer exports instructions to the 3D printer in so-called G-Code, which is the machine language for 3D printers. G-Code tells the print head where to move, how much material to extrude along the way, and how fast to move. Similar commands exist for leveling the print bed, warming up the extruder nozzles, and other parts of the printing process. Regular users will not have contact with low-level G-Code; however, many HCI research projects such as WirePrint  (Figure 2) leverage custom G-Code commands for their applications. Before printing, users typically must load the right materials into the 3D printer and level the printing platform to be the right distance from the extruder nozzle. However, more and more of these routines are becoming automated to make the process easier (e.g., via auto-leveling of the print bed).
|Figure 2. Two low-fidelity fabrication techniques that save hours of printing time: (left) WirePrint  and (right) faBrickation .|
Optional: finishing and post-coloring. To give the object a higher-quality appearance, finishing can be applied to the 3D-printed objects. Depending on the material and process used, different finishing steps are suitable, such as using sandpaper or acetone to smooth the surface. Besides polishing the surface, additional color can be added, for instance, via hydrographic printing, in which the object is dipped into a water bath with a custom-color film floating on its surface that subsequently adheres to the object.
Despite the amazing potential of 3D printing technologies, there remain some sticky problems that must be solved. Here are some of the key challenges we face in the coming years.
One challenge with 3D printing is that the process is relatively slow.
Speed. One challenge with 3D printing is that the process is relatively slow. For instance, printing an object the size of a head-mounted display takes around 15 hours on a plastic extrusion printer. When designing a new object that requires many iterations, the long fabrication time slows down the design process. To allow for faster iteration, low-fidelity fabrication  can print intermediate versions of a design as fast as low-fidelity versions. Only the final version will be printed as slow high-fidelity. The low-fidelity version preserves the key aspect that is currently being tested, such as the shape of an object (see Figure 2, WirePrint ). Figure 2 also shows faBrickation , another implementation of the low-fidelity fabrication concept that focuses on modularity by combining off-the-shelf Lego bricks with 3D-printed parts.
Interaction model. Researchers have also questioned whether the current interaction model with 3D printers in which users use a digital editor to create a physical object is the best workflow. With interactivefabrication , researchers have instead proposed that users work hands on with the physical workpiece, as in traditional crafting, providing physical feedback after every editing step. Figure 3 (left) shows such a system: Users touch the screen and see the physical output in the form of foam drops as they appear on the platform underneath after a few seconds. Because fast physical output is challenging, researchers have also built intermediate systems toward this vision based on augmented and mixed reality (e.g., MixFab , shown in Figure 3).
|Figure 3. (left) Interactive fabrication with Shaper . (right) MixFab: a mixed-reality modeling environment that allows users to embed real-world objects .|
Sustainability. With 3D printing hardware becoming more and more available, a future in which everyone can produce physical objects is getting closer. However, in contrast to digital design, physical objects require actual materials and produce actual physical waste. Personal fabrication is currently a one-way process: Once an object has been fabricated with a 3D printer, it cannot be changed. Any alteration requires printing a new version from scratch. Instead of reprinting the entire object, Patching Physical Objects  proposes to change the existing object (Figure 4): Users mount the object into the 3D printer, then load both the original and the modified 3D model into a piece of software, which in turn calculates how to patch the object. After identifying which parts to remove and what to add, the system locates the existing object in the printer using the system's built-in 3D scanner. After calibrating the orientation, a mill first removes the outdated geometry, and then a print head prints the new geometry in place.
|Figure 4. Patching Physical Objects  allows users to change existing physical objects to minimize waste and printing material.|
Intellectual property. Once an object is available as a digital 3D model, users can fabricate it on their 3D printers for only the cost of the material, bypassing the cost that normally compensates the designer for his or her work. A recent survey found that 80 percent of top 3D designers don't share their designs for fear of theft. Thus, securing intellectual property rights might close the content gap that is currently delaying further adoption of personal fabrication devices.
Scotty  is an appliance that allows users to send objects to distant locations while maintaining copyright (Figure 5). For the object transfer not to interfere with intellectual property—that is, to keep the object unique and to not produce illegal copies in the process—the object needs to disappear at the sender location and reappear at the receiver location. Scotty achieves this by (1) destroying the original during scanning by shaving off one layer at a time with the built-in milling machine. Each layer is captured with the built-in camera. (2) During transmission, Scotty prevents "men-in-the-middle" from fabricating a copy of the object by encrypting the object using the receiver's public key. (3) Finally, during refabrication, Scotty prevents the receiver from making multiple copies by maintaining an eternal log of objects already fabricated.
|Figure 5. Scotty  allows the relocation of physical objects while preserving intellectual property, i.e., keeping the object unique.|
On the technology side, we are seeing rapid progress every year. For instance, the 3D-printing company 3D Systems stated that 3D printing speed on average has doubled every 24 months over the past 10 years. Similarly, we see new 3D-printing materials coming out in short intervals. Material science journals, such as Advanced Materials, can provide HCI researchers with insights on what is coming out soon. Printing new functional materials with properties such as light-activated shape changing will allow for new types of sensors and actuators that will enable completely new interactive applications. On the other hand, there are many open research questions concerning the workflow with 3D printers. They include how to provide the necessary domain knowledge and machine knowledge required to produce physical objects and how to make the process more interactive with a tighter feedback cycle. To solve these challenges, HCI researchers need to reach out and collaborate with researchers in such diverse disciplines as computer graphics, mechanical engineering, material science, architecture, robotics, and design. An exciting journey is ahead!
2. Hudson, S.E. Printing teddy bears: A technique for 3D printing of soft interactive objects. Proc. of the SIGCHI Conference on Human Factors in Computing Systems. ACM, New York, 2014, 459–468. DOI: https://doi.org/10.1145/2556288.25
5. Mueller, S., Mohr, T., Guenther, K., Frohnhofen, J., and Baudisch, P. faBrickation: Fast 3D printing of functional objects by integrating construction kit building blocks. Proc. of CHI'14, 3827–3834.
9. Mueller, S., Fritzsche, M., Kossmann, J., Schneider, M., Striebel, J., and Baudisch, P. Scotty: Relocating physical objects across distances using destructive scanning, encryption, and 3D printing. Proc. of TEI '15, 233–240.
Stefanie Mueller is an assistant professor at MIT CSAIL. In her research, she develops novel interactive technologies that advance personal fabrication. She regularly serves as a program committee member for both ACM CHI and ACM UIST, and was a general co-chair for the 2017 ACM Symposium on Computational Fabrication. firstname.lastname@example.org
Copyright held by author. Publication rights licensed to ACM.
The Digital Library is published by the Association for Computing Machinery. Copyright © 2017 ACM, Inc.