My Design Process
My design process centers on “play.” I always play with new tools and I meander through multiple iterations before I decide on a final design for the software. For every actual piece of software I let into the world, there are at least 10 other iterations before it that I leave to die. This process is very similar to how I used to work as a medium format film photographer many years ago. There are 12 images to every roll of 120 film that I used. For each project, you would need at least 100 images before you created one that was perfect. I believe this is why generative art appeals to me so much, because of the ease of creating the multiples necessary to find one perfect combination of parameters.
I started in Grasshopper working very similarly to how I was working before; coding GCode directly in Processing. This is certainly possible in Grasshopper/Rhino, but my approach wasn’t really congruent with the tools Leah was trying to teach, like using loft and shell. I had to switch gears and start over with my Grasshopper code, which was really frustrating. Right now I am also reading papers about the difficulties of both novice and experienced programmers learning new languages. One surprising issue the researchers pointed out is that programmers frequently rely too much on the paradigms of the language they know well, in order to learn the new language. This often leads to incorrect assumptions on the part of the programmer and they make many mistakes. It is often better to start learning the new language from scratch. I tried to embrace the researchers’ suggestions of starting cold when I went back to code afresh in Grasshopper.
Reflections on my design process lead me to questions of agency. Typically my process involves a collaborative relationship with the machine, or what Frieder Nake would call the “semiotics engine,” where I design the skeleton of the program with intention, decide on the available parameters, and then start to play by trying new things at whim in a state of “flow”. When I code the parametric process more directly, I do believe I have agency and the resulting product is my own, because I have control of so many aspects of the process. As a novice in Rhino, I feel limited by the constraints of someone else’s software. (Of course this is entirely my personal reflection and in no way am I advocating that this is an objective outlook on Rhino and Grasshopper. I am an artist first, and a computational researcher second, and artists are more likely to want to work in what they want to work in). I often say that learning a new tool or new language takes at least 100 hours to become “at ease”. I took about 20 hours of Grasshopper/Rhino tutorials in the past year, but this was not nearly enough. I feel like I am making work for them (Rhino/Grasshopper developers), like I am giving birth to someone else’s children. The complexity and obfuscation of the software denies everyone but the most ardent user the chance to actually contribute to the DNA of the offspring. Coding objects directly in contrast feels very similar for me to making entirely by hand. My code and my machine are in symbiosis. I struggled with the first assignment because I am out of practice using a slicer. In order to print on my Prusa and get elegant results, I need to slow it down to a crawl. On the current assignment, the slicer wasn’t able to handle the geometry I created, so I had to abandon my ideas and conform to someone else’s software. Shockingly, not Prusa, or Cura, or Meshmixer could make GCode from my geometry, because it was all nonplanar. I was spoiled by writing GCode directly.
Initial rejection of new tools and new software is not novel for me. I believe in the future I will find a use for Rhino, just like I use Adobe products for certain jobs.
One particular problem I had with my struggle for agency was having to rely on Rhino’s algorithms to “bake” my structure and rely on a slicer to prep the print. Both of those processes took away my ability to understand exactly how my form was constructed. You can see strange artifacts in the first print I made: strings, rough patches, smooth patches. I assume they are byproducts of the loft or bake algorithm trying to work with the parameters I set in Grasshopper. In contrast, all of my prints have some gaps in the structure, where the distance was too far between lines to close the gap. These I see as “natural” artifacts of the geometry. They are intrinsic to the practice (as in artistic practice) of working in 3D printing, and I see them as beautiful amplifications of the essence of the medium.
As I said before, I started working by trying to reconstruct the same sort of vessels I could make by writing GCode directly. This was an interesting approach, but failed to bear printed fruit because all of my designs required the ability to print nonplanar(ly). I settled on a relatively simple design because I wanted to focus on planar variation. (Oops!) When I opened this STL in the slicer software, every tool (Prusa Slicer, Cura, Autodesk Meshmixer) lopped off the top of the print. The PrusaSlicer was willing to print an approximation in “spiral vase” mode, but I decided to abandon the nonplanar until we get to GCode.
More geometry I did not print…
The First Realized Print
Though the geometry of this print seemed relatively simple and straightforward, Rhino had difficulty making a smooth model. The first image is the model baked in Rhino. The second and third images are the model uploaded into the Pronterface software that I use to print on my Prusa. I have never seen the weird grey lines and surface imperfections show up on a print before Rhino. The light through the images is intentional to show their translucency.
Images 1abcd: Baked
1a: First printed vessel with original grasshopper file based on gcode
1b: 3 models created from individually “sketched” curves in Rhino. These will become the Sisters
1c: For the final print I layered 3 of the sketched curves on top of each other and twisted.
1d: Shows the layered curves
Image 2 and 3: Model in Pronterface
Image 4: First Print
Note imperfections created in Rhino
Image 5: Hand Drawn Scanned as SVG
Note filament gaps on “legs.” I do not see these as imperfections.
Image 6: the Sisters
I am continually inspired to make vessels that have flair
Image 7: the Sisters
They look so glamourous
Image 8: Little Brother
So wiley
Image 9: Little Brother (from above)
At the top of the print you can see the Prusa Slicers attempt to print nonplanar slices in spiral vase mode
Image 10: Big Mama
She’s still printing…
I love the color you choose for these prints, it gives them a water like quality which works well with the flowing curves. Where did you find that translucent filament, I’d really like to get some!
I have to say I mostly felt the same way about Rhino and Grasshopper. While I am sure the software is capable of producing an object that I have in my head, how to get it in the program is what I feel holds me back the most. When I finally found something I liked it took me 4 more hours of work to get it into a printable form because the way I came up with the shape was by using surfaces when I really want to have been creating solids. After a bit of searching I really couldn’t track down how to close my open shapes. Eventually I found a setting in Cura that gave me a printable shape, but that was completely by luck. I suppose that is the challenge in every class though, getting to learn and use new tools (and the limited time to do so). Hopefully the next set has less of a learning curve.
Hi Amy,
I love all of your works. They all look very appealing with that that blue-ish color that you used. I especially really love your “the Sisters” vessels. I love how clean, how nice, and how perfect they are. I really like that shape and I want to create something with that shape later. Your physical artifacts also look and feel amazing too.
First and foremost, your creativity throughout the creation of your vessels is amazing. Each vessel was created with such care and thought, and that even shows when throughout the models you were unable to print. The filament color and photos of each physical vessel are wonderful. The photos taken look straight out of a museum and are very professional. I appreciate your thought about authority of a piece through computational generation and agree. Sometimes I also feel at the limit to the programs constraints and can understand when you used the analogy of “giving birth to someone else’s child”. Overall, everything looks great and I continue to look forward to seeing the you next designs and prints!