Category Archives: personal

Homemade ink timelapse

My dear friend Eric Rodenbeck has been experimenting with creating his own homemade inks and paints from natural materials. Some of the inks mysteriously change in texture, and even color, as they dry. After months of looking at Eric’s paintings, I was intensely curious to see how these changes would look as they were happening. So, of course, I had to shoot some timelapse footage.

The inks I used here are hibiscus + lemon (pale red), hibiscus + orange peel (magenta), carrot greens + alum (yellow), and a sprinkling of sea salt for texture. Time span: about 1 hour.

If you pay close attention, something really strange happens about 11 seconds in to the video, when I added some yellow ink: wherever the yellow mixes with the magenta, the mixture turns a deep bluish green! What is going on there?

Timelapse video of homemade inks flowing across watercolor paper. Some yellow ink flows into a puddle of magenta, and wherever the two inks touch, the mixture turns a deep bluish green color.
Magenta + Yellow = Green?

It turns out that hibiscus gets its color from a type of pigment called an anthocyanin, whose structure and color are pH-sensitive. In an acidic environment, it’s red, but when exposed to an alkaline it turns blue. Since the yellow ink is alkaline, it turns the red hibiscus blue on contact, which then mixes with the ink’s yellow pigment, becoming a lovely vibrant green.

Here are some more photos from the day. Hopefully this will be the first of many such experiments!

Homemade inks

Impossible Paint: Asemic Writing

The Genuary prompt for day 14 is “asemic”, i.e. writing without meaning, which is something I’ve always loved. I thought it might be fun to try doing that with my watercolor simulation. Reader, I was not disappointed.

When we rerun the simulation with a different random seed each time, it comes to life in a different way. It turns out the Perlin noise that drives the brush movement isn’t affected by the seed, so “what” it writes stays the same, while “how” it’s written changes. The consistency seems to deepen the illusion of intentionality, which makes me super happy.

This isn’t my first time tinkering with procedurally generated asemic writing. That was in 1996, when I was working at PDI in Sunnyvale. There was a small group of us who were curious about algorithmic art, and we formed a short-lived club (unofficially known as “Pacific Dada Images”) that was much in the spirit of Genuary: we’d set ourselves a challenge, go off to our desks to tinker, and then meet in the screening room to share the results. The video above came from the challenge: “you have one hour to generate one minute of footage, using any of the software in PDI’s toolset”. I generated the curves in PDI’s homegrown script programming language, and rendered them using a command line tool called mp2r (which Drew Olbrich had written for me to use on Brick-a-Brac).

Genuary 2023: Impossible Paint

I love to tinker with code that makes pictures. Most of that tinkering happens in private, often because it’s for a project that’s still under wraps. But I so enjoy watching the process and progress of generative artists who post their work online, and I’ve always thought it would be fun to share my own stuff that way. So when I heard about Genuary, the pull was too strong to resist.

Here’s a snapshot of some work in progress, using a realtime watercolor simulator I’ve been writing in Unity. Some thoughts on what I’m doing here: it turns out I’m not super interested in mimicking reality. But I get really excited about the qualia of real materials, because they kick back at you in such wonderful and unexpected ways. What I seem to be after is a sort of caricature of those phenomena: I want it to give me those feelings, and if it bends the laws of physics, so much the better. Thus, Impossible Paint.

Branching sand patterns

Here in Sargí, Brazil, when it isn’t raining, we get to take a lot of long walks on the beach. One feature we noticed right away were these unusual patterns just on top of the surface: little clusters of wiggly lines made of light sand that contrasted sharply against the dark, damp, compact sand beneath. Some were small and isolated, while others formed dense networks. We wondered out loud: what were these shapes, and where did they come from? Were they the trails of some tiny worm or crustacean? Detritus tossed up from the digging of underground warrens? That was our best guess on the first day. But the shapes were so tiny— barely wider than a few grains of sand— and we never saw any evidence of whatever life we imagined was creating them.

Later in the week, the weather changed, and the shapes changed too. The lines got longer, and they seemed to favor certain directions more than others. In particular, there was a strong breeze blowing up the coast, and the lines were oriented in the direction of the wind. Also there was something vaguely familiar about the way the shapes branched out and meandered, but I couldn’t put my finger on it.

It took a few more miles of walking, staring, and spacing out before it hit me. I knew where I’d seen shapes like this before: senior year of high school, on the screen of my Amiga 1000.

Like a lot of kids at that particular time, I was into fractals. I’d coded up renderers for Mandelbrot sets (in BASIC, super slow!) and other forms of emergent weirdness. And for one class project, I picked diffusion-limited aggregation: a simulation of fractal growth based on randomly meandering particles that stick together when they touch, creating shapes that look like lightning bolts, branching trees or coral fans. (This technique has since been used to great effect by digital artists and creative coders of all sorts.)

Looking down at the sand, I realized what I was looking at was, literally, exactly the process I had simulated (oh so slowly!) on that home computer: an accretion of individual grains of sand, propelled by the wind until they hit an obstacle, at which point they stick firmly in place.

Here are a few more photos of these patterns. Having an idea of how they’re formed doesn’t make them any less fascinating—in fact, it only raises more questions, like: could you “read” the history of wind since the last high tide by analyzing these shapes? Just how much information is encoded in their twisty branches?

I wish I had more time to spend on this (not to mention, shoot some timelapse!) but we leave Sargí tomorrow. As we’ve said many times this trip, “deixa pra próxima.”

Monster Mash

This past January I had the incredible good fortune to fall sideways into a wonderful graphics research project. How it came about is pure serendipity: I had coffee with my advisor from UW, who’d recently started at Google. He asked if I’d like to test out some experimental sketch-based animation software one of his summer interns was developing. I said sure, thinking I might spend an hour or two… but the software was so much fun to use, I couldn’t stop playing with it. One thing led to another, and now we have a paper in SIGGRAPH Asia 2020!

Have you ever wished you could just jot down a 3D character and animate it super quick, without all that tedious modeling, rigging and keyframing? That’s what Monster Mash is for: casual 3D animation. Here’s how it works:

Bread and Butter Pickles

When life gives you gherkins, you make bread-and-butter pickles. At least, that’s what I’ve been doing. I started with this recipe, but as usual, had to modify it based on what we happened to have in our spice rack. I made a few rookie moves, like using the mandoline bare-handed (and let me tell you, that’s a mistake you’ll only make once. Those things are vicious!) But the pickles are so worth it. Sweet and spicy, great with a sandwich, or just straight out of the jar in your pyjamas (not that I’d ever do that, no sir.)

Four gherkins picked fresh from the vine.
These fresh gherkins have an amazing flavor, almost sweet, even the weird-looking yellow ones.
Sliced gherkins in a bowl.
Finally got an excuse to use the zigzag blade on the mandoline!
Spices and vinegar in the saucepan.
Cinnamon, turmeric, clove, cardamom, mustard seed, white peppercorns, chili flakes.
Gherkins and onions simmering in the pickling syrup.
3 pint jars of bread-and-butter pickles.
Two 5-inch gherkins, with 1/2 cup of pickling syrup, will just about fill one pint jar.

Growing and shrinking

Some gherkins grow, others shrink…

Our new hand-built garden enclosure seems to be doing its job perfectly: we used wire mesh (or hardware cloth as the pros call it) with 1/2″ holes, too small for rats and mice to crawl through, but still plenty of room for the bees that have been happily pollinating our cucumber flowers.

Vegetable gardening and timelapse photography turn out to be an amazingly good match, because they both seem to make me pay attention to tiny details that would otherwise escape my notice. I never thought much about male and female flowers before, but on this gherkin plant it’s really obvious which ones are which: the males have pointy petals, and the females come equipped with a proto-fruit, ready for seed. Much less obvious is how they behave after pollination: some fruits grow, some shrivel up immediately, and others grow for a while, and then seem to give up halfway and start shrinking again. (I’ve read that this last case is what happens when there are some fertilized seeds, but not enough to fill the entire fruit.)

Here’s that big gherkin from the timelapse above. It was delicious.

Gherkins Growing

I’m blown away by how fast the gherkin plant has grown. In just a few weeks’ time it exploded to ten times its original size, and it hasn’t stopped. On a hot day it can grow 2 inches taller. So far the tree rats have left it alone– our lettuce was not so lucky– but with fruit like this on the vine, I don’t know how long they’ll be able to resist it.

Dragon Wrap 360

An animated loop of the directors, producers and PDI-based crew of "How to Train Your Dragon", made from photos taken at the wrap party in March 2010.
Click the image to see the full animated GIF!

Here’s a thing that happened. Remember that crazy accidental stereo photo that we shot at the LA wrap party for “How to Train Your Dragon”, back in 2010? Well, not long after that, we had a second wrap party in Palo Alto, for the PDI part of the crew. At one point I was talking with Chris Sanders, and I showed him that stereo photo from the other party. His eyes got really big, and his inner ten-year-old, always very close to the surface but particularly so in that moment, looked at me very seriously and said “we have to do this again… right now… with EVERYBODY HERE!” Without any kind of plan, we just snapped into action, moving tables, herding animators, passing on instructions in a game of telephone as everyone gathered in a big circle with Chris, Dean, Bonnie and Bruce in the middle. Cameras and phones out and ready, on a count of three, we all snapped a shot– as simultaneously as a crowd of reveling filmmakers can manage (which turns out to be not simultaneous at all, but hey, we’ll fix it in post!) I got everyone to email me their photos the next day, and spent way too many hours truing them up over the following weeks. I even did some very bad morphing at one point. I never quite got it to a state that felt good enough to share, so this sat on my hard drive for the better part of a decade without anybody seeing it.

But the third chapter in the trilogy comes out today! So in honor of that, and all the amazing artists who were there in that room nine years ago, and the many others who have worked on these movies before and since, here it finally is, in the form of an animated GIF: Dragon Wrap 360!

Photos by: Jennifer Yip, Craig Rittenbaum, Kathy Altieri, Craig Ring, Gil Zimmerman, Andy Wheeler, Susan Hayden, Ronman Ng, Melanie Cordan, Jennifer Dahlman, Rebecca Huntley, Ben Andersen, Janet Breuer, John Batter, Andrew Pearce, Katrina Conwright, Toshi Otsuka, Lou Dellarosa, Nara Youn, Michel Kinfoussia, Kevin Andrus, Dave Torres, Michael Baula, Tanner Owen, Karen Dryden, April Henley, Kate Spencer, Cassidy Curtis, Ron Pucherelli, Scott LaFleur, Simon Otto, and Dane Stogner.