Morphogenesis resource compilation on GitHub
Digital morphogenesis, or the creation of form through code and other digital technologies, has been a major interest of mine for a number of years. Though still an emerging term, I like to use it to refer to a category of generative, nature-inspired digital processes based on contemporary and historical research from the natural sciences.
Due to the sheer complexity of phenomena in the real world, accurate modeling through digital technology often requires the use of cutting-edge advancements in graphics technology and programming, computer science, and mathematics, especially when real-time results are desired.
Even for an experienced technologist, staying on top of these advancements enough to make valuable cross-disciplinary connections can be a daunting task. To help make these sorts of insightful connections easier, and to selfishly help prevent myself from having to redo research that I’ve already done, I started a Github repository with a giant README file containing lists of condensed information and references on just about every topic I could think of.
In the repository you’ll find a large README file with content broken down into the following sections:
- Growth algorithms – high-level processes used to generate forms, such differential growth and diffusion-limited aggregation
- Math and physics topics – important concepts and techniques that tend to crop up again and again in digital morphogenesis, like Delaunay/Voronoi diagrams, fractals, and geometric primitives
- Natural phenomena – interesting things that happen in nature that are worth studying, like insect eggs, geological formations, minerals, and locations with bizarre properties
- Lab experiments – real experiments you can do to study interesting phenomena, like the BZ reaction and Hele-Shaw cells
- Useful code patterns and techniques – bits of code that you might find yourself using (or should use), like particle systems, spatial indices, and marching cubes
- Books, publications, and talks – references to read and watch
- Software – a quick look at free and commercial packages that are useful for morphogenesis, like Houdini, Unreal, and Unity. Also includes a list of coding frameworks to try out, like Processing / p5.js, openFrameworks, and nannou