Generating new possibilities with graphical scripting
Generating new possibilities with graphical scripting
![Generating new possibilities with graphical scripting](https://static.arcien.net/images/2016/02/12/d9d1-4276-838b1_lead.jpg)
Back when Shook Kelley first started, the other founders and I believed that there was a better way to practice architecture, specifically within the realm of creating spaces for people to convene in during their daily activities.
Whether we’re designing retail environments, schools, or public places, technology has always been a big part of how we work and the buildings we create.
Our firm does a lot of large, complicated, mixed-use projects, and when I say “large,” I really mean it; some of our projects are around one million square feet or more and can have up to 22 buildings onsite. But even as we create these large places for convening around the world, a major part of our design process is localizing our designs. We work to make the buildings feel appropriate and true to an area, rather than bringing in an outside design philosophy or aesthete that is at odds with a community’s desires for their places.
We’ve always needed design software to create these big communities that link together multiple buildings. Since the 1990s, that software has been a Vectorworks product. Currently, we have Vectorworks Designer, which has a suite of tools that allows us to combine the interdisciplinary aspects of a project, from the architecture to the land planning, into one cohesive whole.
The comprehensive tools in Designer are further complemented by the software’s new capabilities, like graphical scripting with Marionette: a Python-based tool in Vectorworks 2016 that lets you program objects and actions visually, rather than with text.
Right now, we’re in the process of exploring the use of Marionette in early design studies on the urban scale. There are certain defining parameters in retail and residential building sizes, so we’re starting to create generic building blocks that have variables tied to them and can be run through a Marionette script that allows the quick creation of different urban patterns.
We’re even working to incorporate our knowledge of retail science into the Marionette definition, like how far people will walk before they have to see something new and how many right turns a shopper is likely to make, to generate more viable iterations. We’ll always use a mixture of hand and computer to design, but with the increasing demands and shrinking timelines of today, having a tool that can generate those quick studies is a game-changer.
In addition to using Marionette for site planning iterations, we’re also using it for architectural design purposes. Things like building façades can be changed with graphical scripting by manipulating the shape. You can just tie a shape to a Marionette variable, such as the location of the sun, and let it run, or you can make it so that when you change the shape, it affects other things about the design, as well.
A lot of what we’re doing right now is really thematic in nature like scenario studies, but as we get more experience with the tool, we’ll be able to explore more techniques.
Though we’re just getting started with Marionette, we’ve already gained some great insights. It used to be that iterative work like this had to be done by hand and could take us hours to complete. Now, once we’ve created a definition that we like, we can repurpose that script to help us produce design iterations in a matter of minutes. These triumphs took some practice though. When you initially try Marionette, keep your definitions simple. Take a primitive shape and apply some basic operations so that you learn how the nodes interact and how to break up definitions into individual operations before you start connecting them into larger arrays.
Otherwise, it’s hard to troubleshoot a faulty array if you don’t understand how the parts connect. But once you do understand how everything comes together to produce what you want, Marionette becomes an incredible, time-saving tool that allows you to explore design possibilities in a way that is completely integrated with Vectorworks software.