This week’s selection is “Generative Design: Visualize, Program, and Create with JavaScript in p5.js” by Benedikt Groß.
This book is about quite an interesting combination of technologies: generative design and graphical programming.
To catch up, generative design is the science of creating a highly complex 3D model using algorithms rather than manually arranging the solid portions of the design. The creator would build what is essentially a computer program that outputs the 3D model when executed.
This approach is used to create incredibly complex 3D designs that can only be 3D printed. It’s also used to create unusual mechanical designs that attempt to automatically meet a set of constraints provided by the designer. Usually there are specific 3D tools for this purpose.
p5.js is a specialized Javascript library that provides functions to create visual assets. There are functions to create primitive shapes, lines, textures, complex arrangements, and much, much more. All you need to do is write a program using p5.js to create the graphics you’d like to see.
This book attempts to leverage both of these technologies to create complex 3D printable objects. In other words, a p5.js program could be executed to create a complex 3D model.
While Fabbaloo readers are likely interested in using this technique to generate complex geometries, the book also covers non-printing applications of the technology, for example to create visual assets for video or games. These would involve aspects such as color texture, motion, etc., which are not required for 3D printing.
The book covers the basics of p5.js and the Javascript environment, and even shows how to “program beautifully”, which is always a good thing.
There are sections on handling color, motion and image textures, but they are of less interest to us. However, there is quite a bit of material on how to “draw” with p5.js, as well as how to handle type, which is often used in 3D models.
The book also provides a series of examples using different techniques to illustrate the material covered, including creating interactive fonts, art installations and a chair.
You might also be interested in p5.fab, another p5.js library that includes functions specifically for 3D printing.
If you have an interest in creating 3D printable generative structures or artwork using tools that don’t cost anything, then this book is for you.
We’re an Amazon Associate and earn a small fee from qualifying purchases. Help support our 3D print news service by checking out this book!
Via Amazon