Archive for the ‘Uncategorized’ Category

Procedural animation from the inside out

Friday, July 6th, 2018

When I create an interactive procedurally animated character, I usually start with a high level sketch, in words, of who the character is. Primarily I am looking for attitude and motivation.

It really boils down to a single question: “If I were that character, what would I do, and why would I do it?”

I’ve been writing a lot of code recently to create an interactive woolly mammoth that we will be showing at the big SIGGRAPH computer graphics conference in Vancouver this coming August. To make it all work, I’ve had to figure out lots of tricky mathematics and algorithmic detail.

There are also questions of anatomy and biomechanics that are specific to pachyderms. These questions have required research and study of bone and muscle structure, as well as much experimentation. For example, like I said yesterday, how exactly does an elephant move its trunk?

Yet at the end of the day, it all comes down to understanding the character. Here are the notes I wrote for myself when I started this. These notes serve as an indispensable guide to everything I am implementing:

The mammoth thinks of herself mainly as a friendly floating head, curious about the world around her. Her main means of interacting with the world is via her trunk, so she is primarily engaged in using her trunk to interact with the world in various ways, such as carrying objects, picking up food to put in her mouth, or affectionately nuzzling her friends.

Most of the time she not very aware of her body. When she wants to move her head, her body simply moves to make this happen, while using the minimal expenditure of energy.

She is not really aware of her tail. It functions mainly to swat away flies, without her really thinking about it.

To animate the mammoth, we mainly communicate with her head, telling her which objects or other beings she is interested in, and what tasks she is engaging in. For most tasks she will use her trunk. The mammoth’s trunk is her superpower, and she knows it.


Thursday, July 5th, 2018

Yesterday and today I focused on a really fun self-contained programming project. It was part of a larger project, but it possessed its own clearly defined goals and boundaries.

First, some context. I’ve been creating an interactive computer graphic woolly mammoth for a project we are doing here.

If you’ve ever animated a pachyderm, you know the most important and also the most difficult part to get right: The trunk.

After all, an elephant’s trunk is its pride and joy, its superpower, its primary way of expressing itself and for interacting with the world, possessed of both incredible power and incredible delicacy.

In that way it is very much analogous to that great superpower of our own species — our capacity for language.

My project these last two days was essentially to build something in software that moves just like an elephant’s trunk. And this afternoon I finally got it right.

So now I have what you might call a “standalone trunk”. It works just fine on its own, but it has not yet been integrated.

Which is just fine, because that gives me two fun things to work on tomorrow: Attaching a trunk to my computer graphic woolly mammoth, and then teaching the mammoth how to use it.

Tending my garden

Wednesday, July 4th, 2018

From the time I was a small child, I was taught that this day of the year was a day to celebrate my country. I am certainly not naive enough to think that my country is wonderful in all respects, but at its very best it has been pretty impressive.

Unfortunately at this moment the United States is far from its best. It is turning mean.

All the way at the top, within our government itself, I see bullying, cruelty, racism, misogyny, scapegoating and xenophobia — even an embrace of Nazi ideologues. Never thought I would see that one.

I can’t bring myself to watch fireworks this evening. I love this country too much to pretend everything is ok, when things in this land are very far from ok.

And so today, rather than go out and watch fireworks, I am spending the day in the lab, working to build something beautiful to share with the world. The people who I am making this for will not need to belong to a particular tribe, or have a certain skin color, or speak with the right accent.

They just need to be humans, because to be human is to possess an intrinsic dignity. We are all, every one of us, marvels of the Universe. Each single person on this planet is a fresh miracle.

If we fail to see the miracle of another human being, then we just demean ourselves. It is our own humanity that we destroy.

So today I am taking Voltaire’s advice and working to create something beautiful, not for one particular set of humans, but something to be shared and enjoyed by all. As Candide eventually figured out, sometimes you just need to tend your garden.

Hit lit wit bit pit nit fit

Tuesday, July 3rd, 2018

Have you ever read something that was simply too clever? I mean, were you ever immersed in a popular and well-reviewed novel when, out of nowhere, one particular phrase caught your eye simply because of its extreme wit or elegant construction?

For me, this is not necessarily a good thing. Finding my attention drawn too much to an individual phrase or sentence can yank me clear out of an otherwise good read.

At such moments, I tend to feel that greater cleverness in writing is not always better. I like it better when the writing is good in that more difficult but less showy way: When each part subsumes itself to the whole, thereby supporting an experience of maximum immersion.

It’s an easy pit to fall into. After all, who doesn’t love a well-turned phrase?

Still, as Arthur Quiller-Couch once sensibly advised: “Murder your darlings.”1

Alas, I somehow managed to violate that rule in the very title of this post. So I guess it’s time to quit this hit lit wit bit pit nit fit.2

1. Quiller-Couch, A., On the Art of Writing, University of Cambridge, 1916.
2. Op. cit.

Productivity measured in BTU/hr

Monday, July 2nd, 2018

It has been exceedingly hot here in NYC. And we are not alone. I understand that something similar has been transpiring up and down this Eastern coastline.

Fortunately, we work in a University that is very good at providing air conditioning. I think it is not a coincidence that so many people are here in the lab, working away during the summer break.

I suspect this is part of a larger trend: people who choose to work longer hours in air conditioned offices on a super hot summer day. I suspect that for every BTU/hr spent on air conditioning, summer office productivity rises by a quantifiable amount.

I wonder whether anybody has ever calculated the positive effects of office air conditioning on summer productivity.


Sunday, July 1st, 2018

Today I spent much of the day building a digital woolly mammoth. Then I took a break and went with friends to see the new Jurassic Park film.

The contrast between Paleolithic and Jurassic simulacra reminded me of a surprising awakening of consciousness I once had. It had occurred at the SIGGRAPH 1997 Chapters party, which was held at the Los Angeles Zoo.

At the time, Jurassic Park was a very big deal, especially if you worked in computer graphics. The second film, Jurassic Park, the Lost World, had just been released two months earlier, so dinosaur movies were very much on the minds of computer graphics researchers.

Unlike most other CGI movies at the time, the Jurassic Park movies were pioneering in that they consistently strove for extreme realism. Intellectually you knew that what you were seeing was impossible, but you wouldn’t know it from what you were seeing on the big screen.

In particular, I was always impressed by the skin of the dinosaurs. “How,” I had often asked myself, “did the filmmakers know what dinosaur skin looked like? It’s not like you could just wander over to the nearest zoo and look at the dinosaurs.”

That evening at the LA Zoo, I happened to look into the rhinoceros enclosure. I was fascinated to see that the skin of the rhinoceros looked exactly like the skin of a dinosaur.

Just then I remembered that I wasn’t comparing what I was seeing to actual dinosaurs. I was comparing a living rhinoceros to movie dinosaurs.

And then I said to myself, “Oh.”

Two samurai warriors

Saturday, June 30th, 2018

I just saw a wondrous film about two brothers, both great samurai warriors, who were separated at birth, and then banished from their kingdom by an evil king. Each brother ends up fighting in the service of the same great prince at different times, although neither knows at first that the other is doing so.

There is also a mighty warrior princess from a far off land, who fights fiercely for justice and the rights of the oppressed. She is fated to become the true love of the prince, and her faithful servant maiden to become the true love of one of the samurai brothers.

It’s a beautiful movie, and it stars Anjelica Houston, Bill Murray, Bob Balaban, Bryan Cranston, Edward Norton, F. Murray Abraham, Fisher Stevens, Greta Gerwig, Harvey Keitel, Jeff Goldblum, Ken Watanabe, Liev Schreiber, Scarlett Johansson, Tilda Swinton and Yoko Ono, among others.

It’s in theaters now, and I highly recommend it. I won’t tell you the name of the film because it’s easy to figure it out for yourself.

On the tenor sax

Friday, June 29th, 2018

On the tenor sax there are exactly 32 steps — if you go by semitones — between the lowest playable note, the A♭2, to the highest, the E5. If you count the notes between these two extremes (which I have), you will find that there are exactly 32 steps in the chromatic progression from the former to the latter.

As a computer scientist trained in the arcane arts of computer graphics, I am fascinated by this fact. 32 is a perfect power of 2. In fact, it is two raised to the fifth power.

I feel a deep yearning to create a virtual reality musical piece which expands upon this mathematical tidbit. I do not know whether this desire stems from my love of computer graphics, or my love for my idealized view of the tenor sax.

It might very well be both.


Thursday, June 28th, 2018

I used the above emoji in an email to a friend. But then I felt a bit remiss. Such a large emotion to squeeze into such a small means of expression.

I found myself pondering the gradual degradation of our use of language to express our affections for one another. There was a time when people would pen entire sonnets to express such thoughts.

The work of writing a sonnet creates its own ecosystem of emotional value. Rather than simply dash something off, you need to put time and care into the crafting of a sonnet, choosing with care the use of rhyme and meter that will best express your thought.

So I decided to face down four centuries of linguistic devolution and unroll the simple “<3" back up to the level of a full Shakespearean sonnet. Below is what I ended up sending to my friend. The effort was much appreciated.

      A pair of symbols side by side I see
      Which seem to speak of something “Less than Three.”
      Yet other happy thoughts may lurk within,
      Analysis is called for — let’s begin!

      “Less than Three” — not less than Four or Five,
      What other fine constraints might we derive?
      First let’s not be negative, insist
      That Zero is the first upon our list.

      But Zero — what is left when all is gone
      Would leave us nothing positive — move on.
      Yet One will never do. It has been shown
      That happiness is never found alone.

            So now I see the symbols speak of Two:
            The Love you have for me, and mine for you.

Concert with blindfold

Wednesday, June 27th, 2018

This evening I went with two friends to see a music concert. One notable detail: The entire audience was asked to wear blindfolds.

The music itself was a form of Musique concrète. All of the sounds were sampled from real life, and from those samples the composer/performer wove around us a landscape of ever shifting sounds (which actually emerged from speakers placed around the room).

As I listened, my mind kept drifting from one thought to another. Sometimes I felt myself wandering freely, and at other times the literalness of the individual sounds pulled me right back.

I had gone there with two other people. One of them reported that she had found herself floating to distant worlds. I think for her the experience was a kind of spiritual journey.

My other companion, who is blind, said that to him it just sounded like objects. He found it interesting, but he didn’t feel transported at all.

I guess that makes sense. If your experience of everyday life is dominated by the sounds of things around you, then those sounds will not seem distinct from reality. Rather, they would remind you of that reality.

Perhaps a rough analogy would be telling a sighted person that you are inviting them to a magical experience. Then when they got there, you tell them: “Look, here is a table, and this thing next to it is a chair. And that object over by the wall, that is a kitchen sink. Go ahead, try it. Isn’t it amazing?”

And yes, maybe it would be if you weren’t already seeing tables and chairs and kitchen sinks in your everyday life.