Self Portrait (2020) is a meditative game inspired by California flora and the excitement of new mediums. In reflecting on process we can connect the dots between influences and the final piece.
I first discovered the work of 21 year old game developer Inasa Fujio through their tweets chronicling the game development process of Rainy Season and Inaka Project. Their work has an inescapable ability to create a sense of nostalgia for places you've never been. Recreating these types of feelings and environments was a big source of inspiration.
Prior to this project I had no experience with any 3D modeling software. I had a general idea of the type of low-poly/cell-shaded characters I was trying to accomplish and got up and running with a tutorial series by Cherylynn Lima. Her series made experimenting in Blender feel a lot more enjoyable, and by the end of it I had a fully modeled and rigged version of myself.
The 2,429 acre East Bay regional park known as Wildcat Canyon has been a frequent area of exploration for both cyclists and hikers alike. In his piece Again (2012), Oakland–based artist David Wilson demonstrates the virtue of observation and habit forming.
This large-scale drawing of the East Bay’s Wildcat Canyon was made by David Wilson over the course of many months. Each day he would travel by bus and foot to the same spot overlooking the canyon with a single piece of paper. The focus of each drawing depended on Wilson’s ability to remember his work from the previous day. He only assembled the complete work once he had finished each and every individual drawing.¹
Image courtesy of David Wilson
Once the model was completed in Blender it was exported as a glTF (GL Transmission Format) file and imported into a Three.js scene. This part of the process was maybe the most familiar as it was mostly just web development — typical stuff like mapping key commands to incrementing the object's position, or whether a boolean such as walking was true or false.
There were a few techniques which were important for creating the scene though. The first of which was the means by which the grass is created. Rather than model each blade of grass, we duplicate a single blade of grass and randomize it's size, orientation, and position across a surface. To achieve this we use a utility class called MeshSurfaceSampler. Once our blades of grass have been replicated we use an Instanced Mesh to reduce the number of draw calls in our scene.
Through a lot of patience, experimentation, and trial and error the end result started to feel more and more natural and meditative. A big thank you to Gleb for guidance with Three.js.
Japanese composer and musician Ryuichi Sakamoto pioneered early electronic music both as a solo artist and as a member of Yellow Magic Orchestra. In Coda (2017) Sakamoto shows his process of using a pocket recorder to capture the sounds of his environment for use in his compositions. In this same spirit I purchased a Zoom H1n recorder and made several field recordings in the hills, however the final audio has yet to make it into the piece.
This was a particularly rewarding project simply because there wasn't an end goal in mind. Approaching development as a sketch and enjoying the process was something I hope to do more of in the future. By sharing some of the process and influences here I hope it will inspire more projects of a similar ilk.