Archives of Design Research
[ Article ]
Archives of Design Research - Vol. 37, No. 2, pp.7-23
ISSN: 1226-8046 (Print) 2288-2987 (Online)
Print publication date 31 May 2024
Received 01 Sep 2023 Revised 11 Apr 2024 Accepted 25 Apr 2024
DOI: https://doi.org/10.15187/adr.2024.05.37.2.7

Decoupling Geometry from Surface Finish by Parameterizing Texture Directly in G-code for Fused Deposition Modeling (FDM) Printing

Zofia MarciniakKongpyung MoonAndrea Bianchi
Department of Industrial Design, Research Assistant, KAIST, Daejeon, Korea Department of Industrial Design, Research Assistant, KAIST, Daejeon, Korea Department of Industrial Design, School of Computing, Associate Professor, KAIST, Daejeon, Korea

Correspondence to: Andrea Bianchi andrea@kaist.ac.kr

Abstract

Background Prior methods for applying auto-generated textures on a 3D model involve the construction of geometric feature layers on the top of the model surface. These geometries form a textural pattern that is effectively fused and inseparable from the underlying object. However, this interconnection makes it challenging to facilitate follow-up adjustments of the 3D model during the design process without necessitating the remodeling of parts, leading to a cumbersome process for designers and engineers.

Methods In this paper, we present Texture-Slicer, an innovative approach that addresses this issue by applying the texture patterns not during modeling, but instead during the slicing process conducted before 3D printing. This means that the 3D model remains unchanged and that a tunable texture pattern is achieved by injecting modifications of the G-code just before the printing process. Furthermore, Texture-Slicer allows users to control the level of roughness with the texture parameters (wavelength, amplitude, and vertical spacing), supporting the creation of numerous custom textures for the same underlying geometry.

Results Technical evaluation of paradigms was conducted with 30 test samples. Then, a total of 59 texture samples were successfully printed, and an investigation of roughness perception was conducted through a preliminary user study involving 6 participants who evaluated 50 printed samples. The findings indicate that increased wavelength and amplitude created more roughly perceived textures. With vertical spacing, wavelength did not affect the perceived roughness of the texture, while amplitude did affect. Moreover, we presented practical applications that exemplify how Texture-Slicer can be used by designers to generate diverse textures for identical objects to achieve different aesthetic or functional purposes.

Conclusions Texture-Slicer allows designers to achieve rapid iterations and seamless texture modifications on objects without the necessity of remodeling the underlying 3D model. while enabling the encoding of various properties, such as tactile or mechanical attributes into products, all without altering the target 3D model’s surface.

Keywords:

3D-Printing, Computational Design, Digital Fabrication

1. Introduction

One of the fundamental physical properties that influences the user experience of a product is texture. The tactile qualities of a surface can evoke associations and alter the way users interact with an object (Liu et al., 2015; Piqueras-Fiszman et al., 2021; Spence et al., 2011). For instance, a product with a smooth texture can convey a sense of luxury and quality (Chind et al., 2012), while a rough surface can manifest ruggedness and durability (Karana, 2012). Moreover, the texture influences the functionality of a product. A rough-textured handle can, for example, enhance grip and make the product easier to hold and use. Finally, in the prototyping process, the texture provides visual and tactile cues, offering insight into how different textures may influence a user’s perception and identifying the design features of a product.

Designers commonly leverage 3D printing to craft product prototypes, capitalizing on its ability to provide swift results and tangible previews of the final product. This proves particularly beneficial given that the iterative process is a fundamental aspect of the design of any product. Prior to the printing process, designers typically employ a Computer-Aided Design (CAD) modeling environment such as Rhino3D, Blender, or Maya, to craft the object's geometry. Upon completing the design, the model is exported into slicing software, which generates a G-code file (the predominant programming language for 3D printers). In this workflow, the modeling phase is dedicated to shaping the geometry, while slicing facilitates the parametrization of the physical print, such as adjusting infill to influence object weight, or temperature to alter the wall interconnection strength.

Texture as a tactile property of a product, can be only evaluated with a physical prototype of the print, and texture on a surface using a CAD modeling environment typically involves manually drawing the texture pattern repeatedly until the desired surface is achieved. Previous researchers have explored computational methods for the auto-generation of textures. Suzuki et al. (2018) generated a 3D texture by drawing 2D patterns on top of a target surface, Jian et al. (2008) converted a 2D image to 3D texture data based on a wavelength transformation, and Zhou et al. (2006) generated 3D weaving geometry from given triangulated mesh models.

However, those works focus on applying a texture to the model during the modeling phase, where the textures are geometrically part of the model - fused, coupled, and inseparable from the 3D models they are applied to. Instead, this paper considers texture beyond its geometry, but as a property of a product and the user experience it brings: whether visual, mechanical, or haptic. Moreover, the lack of decoupling of geometry and texture-finishing demands users to repetitively remodel the geometry anytime a change is required, resulting in a tedious and long iterative approach just for experimenting with different textures-finishing.

In this paper, we present Texture-Slicer, an approach that leverages the capabilities of 3D printing software technology to incorporate the texture pattern into a given object not during the modeling process, but instead during the slicing process, as a part of modifying the physical printing outcome. Specifically, our tool generates a G-code by slicing original 3D model geometry with injected printing paths of texture patterns, without causing modification to the original geometry of the model. By doing so, the texture-finish becomes a detachable skin, an additional property that can be easily adjusted before printing and without the need for remodeling the artifact. The property can be adjusted with a specific user experience as a goal in mind. In this paper, we describe the method for this automated texture generation within our custom slicer. We conduct a technical evaluation of Texture-Slicer principles, generate a set of 3D printed samples, and evaluate them with users to ascertain the perception of a variety of computationally designed textures. Then, we evaluate the impact of the Texture-Slicer and decoupling method with designers. Our studies and the set of applications we present at the end of this paper show the feasibility of creating a wide scale of roughness perception for rapid product prototyping and its impact on the texture prototyping process.


2. Related Works

Our work intersects closely with prior research in the field of 3D printing, especially custom G-code modification, auto-generated texture patterns, and fabrication of textures on a printed object.

2. 1. Automated Texture Generation on a Surface Geometry

Previous research attempted to mitigate the labor-intensive task of manual texture generation by proposing automated ways to create and apply texture on the surfaces of 3D models. For example, Zhou et al. (2006) introduce an algorithm for geometric texture synthesis by stitching texture patterns onto geometry elements. On the other hand, Tabby (Suzuki et al., 2018) is a design tool that lets users sketch and apply a 2D drawing onto the target surface using an auto-completion approach, making the texture application a less repetitive process (Suzuki et al., 2018). Jian et al. (2008) introduce an algorithm for surface texture synthesis based on wavelet transform in multi-dimensional space. Similarly to these previous works (Jian et al., 2008; Suzuki et al., 2018; Zhou et al., 2006) on automated texture generation, this paper also describes a method of computationally generating rough texture patterns. However, while previous methods rely on geometry modifications and affect the objects as a whole, our approach uniquely applies the texture patterns by modifying the G-code produced by the slicer before printing, instead of making changes to the CAD model itself.

2. 2. G-code modification for 3D printing

HCI researchers and the digital fabrication community have extensively utilized G-code modification as an automation technique for customizing 3D printing results. Programmable filaments introduce multi-color 3D printing techniques with a single-nozzle 3D printer (Takahashi et al., 2020). WirePrint 3D-prints directly in 3D space, instead of layer-by-layer, to maximize the printing speed for rapid prototyping (Mueller et al., 2014). Extruder-Turtle introduces a set of 3D-printed textures using a LOGO-inspired turtle coding method (Pezutti-Dyer & Buechley, 2022). Furthermore, Tran O’Leary et al. (2022) introduce a scripting interface with a visual interpreter for generating custom G-codes for 3D printers. Similarly, we also suggest a slicer that modifies the G-code, but we specifically employ this method for the automatic generation of surface textures over pre-existing input models.

2. 3. 3D-printed objects with texture

Through the examination of prototypes with various textures, designers can explore the interaction between texture and user experience, and inform the development of optimal product finishes. On top of mechanical benefits, rough-surfaced prototypes can alter the perception of other sensors, such as human taste (Van Rompay et al., 2017). HapticPrint (Torres et al., 2015) introduces a tool to modify the feel of a 3D model by mapping a texture on an object and modifying its internal structure to enable weight characteristics. Cillia 3D prints micron-scale hair-like structures for passive actuators, mechanical adhesion, and touch sensors (Mueller et al., 2014). 4Dtexture uses multiple materials to generate various textures on 3D printed objects (Sun et al., 2020). On the other hand, (Van Rompay et al., 2017, 2018, 2021) have explored the impact of different surface textures on human perception of taste when drinking beverages. Similarly to these works, Texture-Slicer contributes to the topic of automated texture generation, but it utilizes the method of direct G-code modification to achieve the goal of decoupling the geometry from the surface finish allowing for a more comfortable iteration process.


3. Texture-Slicer: system and implementation

Texture-Slicer is a tool that allows users to apply textures to the surface of a 3D model and exports the resulting geometry into a RepRap (Rhys Jones et al., 2011) G-code file that can be used directly for 3D printing without requiring the use of an external slicer. This tool works using a custom C# script in Rhino Grasshopper that generates a texture printing path pattern for an arbitrary 3D model.

3. 1. Texture-Slicer principles

The tool works by taking as an input the 3D geometry and a set of parameters that describe the characteristics of the desired texture via a set of sliders in a graphical interface (Figure 1d). The texture is generated based on three parameters: wavelength (Figure 1a: spacing between consecutive bumps), amplitude (Figure 1b: offset of the bump from the surface, or the height of the bump), and vertical spacing (Figure 1c: non-textured space between textured print layers in the z-axis).

Figure 1

Texture’s printing path according to parameter control from minimum (left) to maximum (right) value

3. 2. Workflow

To utilize Texture-Slicer, designers can either model or import a 3D model to Rhino modeling software. After launching Texture-Slicer’s UI within Rhino Grasshopper, the designer selects a geometry for Texture-Slicer and adjusts the desired texture pattern with three slicers for wavelength, amplitude, and vertical spacing. Then, the designer can save the G-code file and print the object. After 3D printing the prototype, if texture change is required, the user can come back to the Texture-Slicer UI (Figure 1d), adjust the parameters, and generate a new G-code file within seconds. In this process, no change in the 3D model is required at any point.

3. 3. Texture Generation Algorithm

To generate the texture, the tool extracts layer-by-layer the contour lines of the 3D geometry and generates triangular wave texture patterns on the printed object considering the input parameters. The height of the bumps, controlled by the amplitude parameter (from 0 to 5mm), together with the spacing between each bump defined by the wavelength parameter (from 0 to 5 mm) regulates the surface undulations to change texture roughness. For a 3-dimensional texture effect, users can control the vertical spacing parameter that removes the support below the printing path on the set distance. Figure 2a shows how the Texture-Slicer creates an array of lines on the surface by taking a cross-section of the object, spaced 0.2 mm apart (layer height). Each cross-section is offset by a specific amplitude distance, as illustrated in Figure 2b, and the cross-section and its offset are divided at a given interval (wavelength) as in Figure 2c. The start points of the intervals are stored as points (nodes). A leftover segment shorter than one bump length can be created when dividing an arbitrary contour length into set length intervals. To avoid having no texture on the leftover segment area, the pattern shifts half-cycle every two layers to keep the texture pattern symmetrical. For odd-numbered layers, the printing path is generated by connecting odd-numbered nodes. Conversely, for even-numbered layers, we use even-numbered nodes. This is depicted in Figure 2d. Texture-Slicer rearranges the nodes of the divided intervals in a specific order based on the layer group to generate an array of printing coordinates.

Figure 2

Texture generation principle in G-code


4. Technical Evaluation, Texture Exploration and Perception Study

This section is divided into three parts: technical evaluation, texture exploration methodology, and perception study methodology. Before jumping to texture exploration and perception, we conduct a technical evaluation to verify the feasibility of printing the parameters according to principles outlined in the previous section (3.1 Texture-Slicer principles) by printing test samples. Then, we conduct a scientific exploration of all texture parameter combinations and produce three texture sample sets: (1) without vertical spacing, (2) with vertical spacing, and (3) with two materials in one geometry. Through this texture exploration, we aim to examine the impact of three input parameters on the feasibility of printing various textures. Lastly, we conduct a preliminary perception study to evaluate the effect of amplitude, wavelength, and vertical spacing on the judgment of roughness perception.

4. 1. Technical Evaluation Method

Using a single extruder nozzle (e3D tool changer), we printed cuboid test samples textured on one side. We produced two sets: one with varying amplitudes (1-5mm) and a fixed wavelength (3mm), and the other with varying wavelengths (1-5mm) and a fixed amplitude (3mm). Each set comprised five samples per parameter and was printed in 3 copies, totaling 30 samples. All test samples had a vertical spacing of 1mm. To clarify the measurements taken for this evaluation, we visualized them in Figure 3a. Amplitude represents the distance from the test sample surface to the wave peak. The Falling Angle denotes the angle between the sample's normal vector and the amplitude vector. Wavelength indicates the length of the wave base.

4. 2. Technical Evaluation Results

Figure 3b shows measured amplitude, falling angle, and prints of varying amplitude. Amplitude length accuracy was consistent (avg: 74%, sd: 9%), but the length itself was shorter than the set value due to non-uniform material deposition. The falling angle was relatively consistent (avg: 36.8°, sd: 3.5°), although the amplitude of 5mm exhibits the smallest falling angle (31.3°). High amplitude results in waves that, due to their length, stack and fold on top of layers underneath. Without the largest amplitude, the samples have a similar falling angle (avg: 38.2°, sd: 1.8°).

Figure 3

Technical evaluation of printing: (a) measurement method, (b) results for varying amplitude, (c) results for varying wavelength

Figure 3c shows measured wavelength, falling angle, and prints of varying wavelengths. Since all the waves were printed correctly, the factual wavelength matched the one set by the software. The falling angle was on average 38.6° (sd: 9.8°), with an outstandingly low falling angle for wavelength of 1mm. Textures created using a small wavelength setting, such as 1mm, result in printed samples with narrow waves, and with the deposited material sticking to neighboring, densely spaced, waves. Without the 1mm wavelength test samples, the samples have consistent falling angles (avg: 42.8°, sd: 3.4°).

In both cases of 5mm amplitude and 1mm wavelength, the amount of extruded material is higher than other parameters within their groups. This means the material stacks on top of lower waves (5mm wavelength) or sticks to adjacent waves (1mm wavelength) instead of falling downwards. Besides those edge values, the remaining parameters produce consistent texture patterns. This evaluation shows that higher amplitude values or shorter wavelengths can lead to distortion in texture, therefore in the following studies we limit the amplitude up to 5mm and the wavelength from 1mm.

4. 3. Texture Exploration

Following the results of the technical evaluation outlined in the previous section, we explore the combinations of amplitude and wavelength within the interval of 1 to 5mm, as lengths outside this interval can lead to distorted printing results. As technical evaluation yielded consistency for wave falling angle with vertical spacing, we print sets with and without vertical spacing for an in-depth analysis. Then, we print one more set of texture samples to understand how the roughness of the material could be modified by using two materials with different elasticities within one object.

4. 3. 1. With and Without Vertical Spacing

We initially printed 50 texture samples (2 sets of 25 samples: without vertical spacing and with vertical spacing) with 5 levels of amplitudes amplitude (1 to 5mm, 1mm increment), 5 wavelengths (1 to 5, 1mm increment), and two different vertical spacing (0mm and 1mm). A single extruder nozzle was loaded with a PLA filament under the following settings: temperature 200°C, 15mm/s print speed, and 85% flow rate. The used geometry is a prism with an isosceles right triangle base. The resulting 50 printed texture samples are shown in Figure 3. G-code computation takes up to 61ms and parameter injection up to 22ms.

4. 3. 2. Two materials

In a follow-up study, we chose 9 out of the previously printed 25 textures, selecting those with the most distinctive texture features: wavelength and amplitude (1, 3, and 5mm) and vertical spacing of 1 mm, and printed them using two materials within one geometry. The materials we considered were the PLA filament as used in the first part of the experiment and a TPU filament printed with the following settings: temperature 250°C, 15 mm/s, and 110% flow rate. The algorithm is modified to print each infill layer using one of the materials alternately. This study would give us an insight into the feasibility of connecting two different materials within one structure, following previous works reporting difficulty in connecting two different filament types within the same object (Kwon et al., 2021).

4. 4. Perception Study Setup and Data Analysis Method

For the study, we recruited via word-of-mouth 6 participants (male: 3, female: 3, left-handed: 1, right-handed: 5) with ages between 22-33 years old (avg 26, sd: 4.05).

The experiment followed a within-subjects design procedure, with all participants exposed to two parts of the study in the same order. Between each session, there was a 2-minute and 30-second break, and no time restrictions were given when experiencing samples.

In each task, the participants were instructed to explore 25 texture surfaces arranged on a 5x5 matrix with any part of their dominant hand and to score the texture roughness on a scale from 1 (smooth) to 10 (rough) simultaneously. To avoid visual bias, the samples were covered by a fabric curtain, and the test samples were not shown to participants at any point before and during the experiment. This task was repeated 6 times, 3 times with samples with no spacing and 3 times with samples with spacing.

None of the participants claimed any difficulty locating the samples on the matrix, and the experiment session took from 54 minutes to 1 hour. We run Multiple Regression Analysis on both sets separately, with 2 parameters (wavelength and amplitude), to predict the perceived roughness value. We use paired samples t-test to examine the effect of vertical spacing on roughness perception.


5. Results and discussion

5. 1. Feasibility of the printed artifacts

Figure 4a shows 25 samples with every possible wavelength and amplitude combination and no vertical spacing, while Figure 4b shows 25 samples with the same wavelength and amplitude values, but with a vertical spacing of 1 mm.

Figure 4

50 samples used for the study: (a) Green highlights are vertically spaced, and (b) the rest are without vertical spacings. The dotted square represents the reference geometry

In Figure 4a, printed samples show that a bigger wavelength distance (4mm) creates a more vivid texture pattern than the one with a shorter wavelength (1mm). Furthermore, the amplitude parameter also augments the texture effect regardless of the wavelength distances. In Figure 4b, the samples with vertical spacing create distinct textures and patterns compared to the previous samples (Figure 4a).

Removing the support underneath the printed texture allows the material to freely settle in a 3-dimensional manner. Materials sag their weight creating a waving effect. In cases where both parameters (wavelength and amplitude) are at the end of the spectrum, the length of material extruded without the support underneath peaks, therefore resulting in the least controllable printing results. Another notable feature from Figure 4b samples is their amplitude does not significantly increase the overall size of the geometry, unlike the samples in Figure 3a without the vertical spacing. This is attributed to the downward falling of the texture patterns depicted in Figure 4b.

In instances of large amplitudes (5mm), it can lead to inconsistent wave formations, as observed during technical evaluation and illustrated in Figure 4b. This effect is particularly noticeable when 5mm amplitude is combined with smaller wavelength. As in Figure 5, the resulting texture printed with TPU is less saggy than the one printed with PLA. It is especially visible on samples with amplitudes of 1 and 3mm, as well as when the wavelength is 1mm. In addition, due to the higher viscosity of TPU, the texture pattern is round-shaped as opposed to the spiky-shaped texture of PLA.

Figure 5

9 samples with 3 wavelength and amplitude values with two materials, PLA and TPU

5. 2. Perception Study Result

For the texture without vertical spacing, these two parameters statistically significantly predicted roughness value, F(2,95) = 394.859, p < .0005, R2 = .639. The texture samples with vertical spacing predicted the perceived roughness value, F(2,95) = 84.295, p < .0005, R2 = .274.

In the case of texture without vertical spacing, both the wavelength (Unstandardized coefficients: 1.334) and the amplitude (Unstandardized coefficients: 0.759) added statistically significantly to the prediction, p<0.05. For textures with vertical spacing however, unlike the previous samples, the wavelength variable did not add statistically significantly to the prediction (Unstandardized coefficients: 0.110) while the amplitude added statistically significantly to the roughness prediction (Unstandardized coefficients: 0.966), p<0.05.

There was a significant difference in roughness perception between samples with vertical spacing (M=5.74, SD=1.75) and samples with no vertical spacing (M=4.55, SD=2.30) (t(24)=-2.83, p<0.01).

5. 3. Discussion

Our further studies demonstrate the feasibility of using Texture-Slicer to print various textures and combine two materials within a single structure, impacting user perception on roughness level. The experiment confirmed that different parameters result in a broad range of visual effects and printable textures. Modifying the printing path to create a texture without support (with vertical spacing) enabled a physical sagging effect and amplified textural complexity that set the samples apart from ones without vertical spacing. Careful consideration is required when employing high amplitudes and small wavelengths, as they have the potential to cause distortions in the printed texture. Combining two materials is viable, offering designers the freedom to explore multiple materials and textures in their 3D-printed designs.

The study found that increasing amplitude and wavelength leads to higher roughness perception in texture-finish without vertical spacing (Figure 6a). On the other hand, for the surface finish with vertical spacing, amplitude alone influences perceived roughness (Figure 6b). This is due to more prominent individual spikes on samples with vertical spacing. Hence, designers can control roughness with the amplitude value for vertically spaced texture surface finish, even on surfaces with limited length. Designers can achieve a sharp texture by eliminating vertical spacing and fine-tuning roughness with wavelength and amplitude. For a smooth texture, a designer can use vertical spacing and increased amplitude, ideal for small jewelry items with limited surface area. The study revealed that adding vertical spacing significantly increases the roughness perception of the surface.

Figure 6

Perception of roughness relative to parameters

Increased roughness perception introduces a crucial dimension that can be attributed to unique tactile characteristics introduced by the presence of vertical spacing. The designers can leverage vertical spacing to evoke enhanced tactile response.


6. User Testing

In the earlier sections, we examined how parameters (wavelength, amplitude, and vertical spacing) can generate diverse printing patterns to give geometry a textured appearance. By conducting a user evaluation, we have demonstrated and shown the relationship between the three parameters and the perceived roughness of the printed surface. In this section, our focus shifts towards understanding the difference Texture-Slicer brings to a product design development process through user testing.

6. 1. Procedure

For this study, we recruited 6 participants (female:3, male: 3, aged between 20 and 26; avg: 22.17 std: 1.95) currently pursuing studies in design. Employing a qualitative research approach, we have conducted individual semi-structured interviews, organized into three segments: an initial interview, two user testing tasks, and a post-interview. All participants were proficient in 3D modeling and 3D printing.

Initially, we asked participants to describe their experience with 3D modeling, 3D printing, and incorporation of texture in their previous designs or projects. In the first task, we asked the participants to imagine designing a texture of a cloth hanger suitable to hang one of two material samples. Participants 1, 2, and 3 were given a sample of a soft and thick air mesh (Figure 8A). Participants 4, 5, and 6 were given a delicate, cozy sweater fabric with fur (Figure 8B). Following an ideation phase, participants were introduced to the Texture-Slicer interface alongside a pre-prepared hanger 3D model. Participants were instructed to design the most fitting texture. Upon parameter (wavelength and amplitude) selection, participants were provided with a pre-printed model and asked to consider each printing as a 40-minute long investment. This procedure is repeated until the designers express satisfaction with their results. The second task followed a similar structure to the first task, but participants were asked to recreate a texture of the sample Velcro (Figure 8c) material instead. Upon parameter selection, the designers received a texture sample as in Figure 3b. In both tasks, only texture with vertical spacing was utilized. We additionally modified the graphical interface to display a scale bar with a roughness perception value for each texture, as computed during the perception study. Upon the completion of both tasks, we interviewed the participants on their experience with Texture-Slicer, perception of the design process, and comparison with their previous experiences. For quantitative analysis, we recorded each iteration choice and duration. Interview quotes were gathered to conduct a thematic analysis.

6. 2. Results and Discussion

Texture-Slicer facilitates iterations and texture modifications

Every participant completed the iteration and evaluation process of each task in under 18 minutes (time in minutes for Task 1: mean=10:25, SD=3:52; Task 2: mean=6:28, SD=4:51). The participants discussed the advantages of Texture-Slicer over traditional modeling, pointing out that the latter is tedious, time-consuming and involves numerous steps, especially when implementing alterations (P2, P3, P4). P2 and P5 mentioned that Texture-Slicer’s parametrization makes it affordable to create a variety of textures.

Goal-Driven Iterative Strategies

The difference between tasks called the users for varied strategies.

To complete Task 1, users had to assess texture based on its functional characteristics, which could only be examined using a physical prototype. Each participant tested the texture’s anti-slip qualities using a sample fabric. Participants tend to explore parameters on the spectrum provided by Texture-Slicer. We can also observe a difference in the iteration process between participants who received a delicate fabric sample and an air mash sample. Participants given air mesh gradually increased the parameters, while participants with delicate fabric samples changed the parameters back and forth, which might arise from higher consideration requirements for a delicate and fragile fabric compared to a sportswear sample. Furthermore, we have found that participants generated additional prototypes for validation purposes of the texture functionalities. The participants performed multiple iterations, but their final design choice was not the result of the last iteration, as indicated in Figure 7A.

Figure 7

Timeline of task completion for each participant. Task 1 was conducted in groups A) air mesh and B) delicate fabric

Figure 8

User testing final printing results

However, Task 2 required the recreation of a tactile sensation of a sample. As shown in Figure 7b, users were able to settle their results by settling one parameter at a time. The users made their iterations by comparing the texture and material sample size: P1 considered the wavelength and amplitude ratio, P2 measured Velcro’s sample height, and P6 assessed the printed result size. As participants’ final choice is drawn from one of the last two iterations, it becomes evident that users iterate to converge the parameter values until the texture’s feel is closest. This underscores their focus on specific visual and tactile attributes rather than mechanical ones.


7. Applications

In this section, we provide a diverse range of functional application examples generated with Texture-Slicer. Our goal is to exemplify the spectrum and practical utility of Texture-Slicer in generating textures holding various surface properties. We want to underscore the relevance and versatility of Texture-Slicer while highlighting the ease it brings to the prototyping process compared with the traditional texture modeling process, as validated by the participants in the user testing phase.

7. 1. Tactile Properties of Textures

The texture is often used to affect haptic feedback (Torres et al., 2015). For instance, we printed camera lens rings with different textures for zoom (3 mm amplitude, 3 mm wavelength, no vertical spacing) and focus (5 mm amplitude, 5 mm wavelength, 1 mm vertical spacing) controls (Figure 9a). The jagged surface of the zoom ring allows for a secure grip, while the rough texture of the focus ring enables more precise adjustments. Combining multiple textures within an object can encode tactile information for distinguishing separate parts, enabling eyes-free control interfaces (Figure 9a).

Figure 9

a) camera lens rings with different textures for a distinguishable feel, b) cup holder with three different texture patterns which could provide different taste experiences

Similarly, previous research demonstrates how beverage taste can be influenced by the texture of the cup surface (Van Rompay et al., 2017, 2018, 2021). For example, a smooth surface could make a beverage feel sweeter (like hot chocolate) while increasing roughness can enhance bitterness (as in tea or coffee). To simulate this, we printed three cup holders with different textures: smooth (0 mm wavelength and amplitude, no vertical spacing), scratchy (3 mm wavelength, 4 mm amplitude, 1 mm vertical spacing), and rough (1 mm wavelength, 5 mm amplitude, no vertical spacing) (Figure 9b). This shows how various perceived textures of different smoothness and roughness can be generated from the same underlying surface. This approach could aid research in haptic perception studies presented earlier (Van Rompay et al., 2017, 2018, 2021).

7. 2. Mechanical Properties of Textures

Texture-Slicer's versatility extends beyond providing tactile cues or haptic feedback, enabling the addition of mechanical properties to objects. Different combinations of parameter settings empower mechanical designs suitable for specific conditions. For instance, textures can be utilized to create anti-slip surfaces for cloth hangers and shoe soles.

In one example, hangers with resistive padding were printed to securely hold different fabric types (Figure 10a-b). The delicate texture hanger (5 mm wavelength, 1 mm amplitude, no vertical spacing) is suitable for lightweight summer clothes, while the sturdy one (1 mm wavelength, 2 mm amplitude, no vertical spacing) is ideal for heavy winter jackets.

Figure 10

a) A cloth hanger with less rough texture on its shoulders b) A cloth hanger with more rough texture c) Textured shoe sole for active footwear with increased spikes

Similarly, shoe soles were prototyped with two different texture variations (Figure 10c-d), each offering distinct mechanical properties. The shoe sole textures can be applied to design anti-slip surfaces for outdoor sports shoes. The smaller amplitude spikes (3 mm wavelength, 3 mm amplitude) are useful for activities like jogging, while the higher amplitude (3 mm wavelength, 5 mm amplitude) provides enhanced grip for more extreme conditions, such as walking on icy surfaces.


8. Limitations and Conclusion

This paper extends prior works on automated texture generators in CAD environments (Jian et al., 2008; Suzuki et al., 2018; Zhou et al., 2006) and direct G-code modifications for 3D printers (Ou et al., 2016; Sun et al., 2020), contributing to the rapid prototyping of geometries with various texture finishing. Decoupling the surface finishing from the actual geometry allows users to avoid iterative remodeling whenever the textures are difficult to produce in a manual process. Throughout the perception study, this paper shows that Texture-Slicer is capable of controlling the roughness level from the two parameters, even on a small surface (limited wavelength value), by increasing the amplitude value. Moreover, through user testing, we successfully validated that Texture-Slicer introduces positive advancements to the texture prototyping process. The insights from participants' interviews affirm the tool’s potential to enhance and streamline the texture design workflow.

The main limitation of the Texture-Slicer is the orientation of the texture pattern creation on surfaces. As it inherits the layer-by-layer anisotropic fabrication process, it can only generate textures in planar directions. Therefore, future work will include developing a Texture-Slicer for open-sourced 5-axis printing machines (Hong et al., 2022) to fabricate surface texture in any direction. Another limitation is the small sample size (6 participants) of the perception study and user testing, and follow-up works will require a larger sample size to increase the accuracy of the prediction model.

In conclusion, Texture-Slicer is a novel approach to 3D printing various textured objects without remodeling the geometry itself but computationally modifying the G-code for 3D printing machines. It allows users to rapidly generate print-ready files with different textures by adjusting three key parameters to control the roughness level of the surface. We believe that decoupling the finishing surface from its attached geometry and injecting texture patterns on G-code contributes towards the rapid prototyping user experience.

Acknowledgments

This work was supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIT) (No. 2018R1A5A7025409).

Notes

Citation: Marciniak, Z., Moon, K., & Bianchi, A. (2024). Decoupling Geometry from Surface Finish by Parameterizing Texture Directly in G-code for Fused Deposition Modeling (FDM) Printing. Archives of Design Research, 37(1), 7-23.

Copyright : This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License (http://creativecommons.org/licenses/by-nc/3.0/), which permits unrestricted educational and non-commercial use, provided the original work is properly cited.

References

  • Chind, K., & Sahachaisaeree, N. (2012). Purchasers' Perception on packaging formal design: a comparative case study on luxury goods merchandizing. Procedia-Social and Behavioral Sciences, 42, 436-442. [https://doi.org/10.1016/j.sbspro.2012.04.208]
  • Hong, F., Hodges, S., Myant, C., & Boyle, D. E. (2022, April). Open5x: Accessible 5-axis 3D printing and conformal slicing. In CHI Conference on Human Factors in Computing Systems Extended Abstracts (pp. 1-6). [https://doi.org/10.1145/3491101.3519782]
  • Jian, M., Liu, S., & Dong, J. (2008, December). 3d surface texture synthesis based on wavelet transform. In 2008 International Symposium on Computer Science and Computational Technology (Vol. 2, pp. 230-233). IEEE. [https://doi.org/10.1109/ISCSCT.2008.319]
  • Rhys Jones, R., Haufe, P., Sells, E., Iravani, P., Olliver, V., Palmer, C., & Bowyer, A. R. (2011). The replicating rapid prototyper. Robotica, 29, 177-191. [https://doi.org/10.1017/S026357471000069X]
  • Karana, E. (2012). Characterization of 'natural' and 'high-quality'materials to improve perception of bio-plastics. Journal of Cleaner Production, 37, 316-325. [https://doi.org/10.1016/j.jclepro.2012.07.034]
  • Kwon, N., Deshpande, H., Hasan, M. K., Darnal, A., & Kim, J. (2021, October). Multi-ttach: Techniques to Enhance Multi-material Attachments in Low-cost FDM 3D Printing. In Proceedings of the 6th Annual ACM Symposium on Computational Fabrication (pp. 1-16). [https://doi.org/10.1145/3485114.3485116]
  • Liu, J., Lughofer, E., & Zeng, X. (2015). Aesthetic perception of visual textures: a holistic exploration using texture analysis, psychological experiment, and perception modeling. Frontiers in computational neuroscience, 9, 134. [https://doi.org/10.3389/fncom.2015.00134]
  • Mueller, S., Im, S., Gurevich, S., Teibrich, A., Pfisterer, L., Guimbretière, F., & Baudisch, P. (2014, October). WirePrint: 3D printed previews for fast prototyping. In Proceedings of the 27th annual ACM symposium on User interface software and technology (pp. 273-280). [https://doi.org/10.1145/2642918.2647359]
  • Ou, J., Dublon, G., Cheng, C. Y., Heibeck, F., Willis, K., & Ishii, H. (2016, May). Cilllia: 3D printed micro-pillar structures for surface texture, actuation and sensing. In Proceedings of the 2016 CHI Conference on Human Factors in Computing Systems (pp. 5753-5764). [https://doi.org/10.1145/2858036.2858257]
  • Pezutti-Dyer, F., & Buechley, L. (2022, February). Extruder-Turtle: A Library for 3D Printing Delicate, Textured, and Flexible Objects. In Proceedings of the Sixteenth International Conference on Tangible, Embedded, and Embodied Interaction (pp. 1-9). [https://doi.org/10.1145/3490149.3501312]
  • Piqueras-Fiszman, B., & Spence, C. (2012). The influence of the feel of product packaging on the perception of the oral-somatosensory texture of food. Food Quality and Preference, 26(1), 67-73. [https://doi.org/10.1016/j.foodqual.2012.04.002]
  • Spence, C., & Gallace, A. (2011). Multisensory design: Reaching out to touch the consumer. Psychology & Marketing, 28(3), 267-308. [https://doi.org/10.1002/mar.20392]
  • Sun, L., Li, J., Chen, Y., Yang, Y., Tao, Y., Wang, G., & Yao, L. (2020, April). 4DTexture: a shape-changing fabrication method for 3D surfaces with texture. In Extended Abstracts of the 2020 CHI Conference on Human Factors in Computing Systems (pp. 1-7). [https://doi.org/10.1145/3334480.3383053]
  • Suzuki, R., Yatani, K., Gross, M. D., & Yeh, T. (2018). Tabby: Explorable design for 3D printing textures. arXiv preprint arXiv:1810.13251.
  • Takahashi, H., Punpongsanon, P., & Kim, J. (2020, October). Programmable filament: Printed filaments for multi-material 3D printing. In Proceedings of the 33rd Annual ACM Symposium on User Interface Software and Technology (pp. 1209-1221). [https://doi.org/10.1145/3379337.3415863]
  • Torres, C., Campbell, T., Kumar, N., & Paulos, E. (2015, November). HapticPrint: Designing feel aesthetics for digital fabrication. In Proceedings of the 28th annual ACM symposium on user interface software & technology (pp. 583-591). [https://doi.org/10.1145/2807442.2807492]
  • Tran O'Leary, J., Jun, E., & Peek, N. (2022, October). Improving Programming for Exploratory Digital Fabrication with Inline Machine Control and Styled Toolpath Visualizations. In Proceedings of the 7th Annual ACM Symposium on Computational Fabrication (pp. 1-12). [https://doi.org/10.1145/3559400.3561998]
  • van Rompay, T., van Ooijen, I., Groothedde, S., & Saakes, D. (2021). (Not to be taken) with a grain of salt: Enhancing perceived saltiness by 3D-printed surface textures. Food Quality and Preference, 93, 104279. [https://doi.org/10.1016/j.foodqual.2021.104279]
  • Van Rompay, T. J., Finger, F., Saakes, D., & Fenko, A. (2017). "See me, feel me": Effects of 3D-printed surface patterns on beverage evaluation. Food quality and preference, 62, 332-339. [https://doi.org/10.1016/j.foodqual.2016.12.002]
  • Van Rompay, T. J., Kramer, L. M., & Saakes, D. (2018). The sweetest punch: Effects of 3D-printed surface textures and graphic design on ice-cream evaluation. Food quality and preference, 68, 198-204. [https://doi.org/10.1016/j.foodqual.2018.02.015]
  • Zhou, K., Huang, X., Wang, X., Tong, Y., Desbrun, M., Guo, B., & Shum, H. Y. (2006). Mesh quilting for geometric texture synthesis. In ACM SIGGRAPH 2006 Papers (pp. 690-697). [https://doi.org/10.1145/1179352.1141942]

Figure 1

Figure 1
Texture’s printing path according to parameter control from minimum (left) to maximum (right) value

Figure 2

Figure 2
Texture generation principle in G-code

Figure 3

Figure 3
Technical evaluation of printing: (a) measurement method, (b) results for varying amplitude, (c) results for varying wavelength

Figure 4

Figure 4
50 samples used for the study: (a) Green highlights are vertically spaced, and (b) the rest are without vertical spacings. The dotted square represents the reference geometry

Figure 5

Figure 5
9 samples with 3 wavelength and amplitude values with two materials, PLA and TPU

Figure 6

Figure 6
Perception of roughness relative to parameters

Figure 7

Figure 7
Timeline of task completion for each participant. Task 1 was conducted in groups A) air mesh and B) delicate fabric

Figure 8

Figure 8
User testing final printing results

Figure 9

Figure 9
a) camera lens rings with different textures for a distinguishable feel, b) cup holder with three different texture patterns which could provide different taste experiences

Figure 10

Figure 10
a) A cloth hanger with less rough texture on its shoulders b) A cloth hanger with more rough texture c) Textured shoe sole for active footwear with increased spikes