Design by simulation
Ivan Sutherland invented a revolutionary way of designing on a computer in 1962. We can find some of his core ideas in modern 3D software.
Here's Alan Kay presenting a revolutionary program made by Ivan Sutherland for his PhD thesis in 1962:
Sketchpad seems smarter and different from common 2D drawing programs. In Sketchpad, you draw without trying too hard, then you assign goals and constraints to the computer, and it resolves the shape into what you instructed it to be. In contrast, regular 2D drawing programs encourage you to precisely build your shapes bottom up and step by step.
Alan Kay laments about how surprisingly hard it is to find something like Sketchpad available for the general public today.
Design by simulation
The way Sketchpad does things reminds me of how we work with 3D software. Here's an example from Cinema 4D:
In this example, the scene is animated using physics and constraints only:
- The head of the character is constrained to aim at the direction of the ball (along the red X axis) with 2 degrees of freedom (the head rotates left and right, up and down).
- The ball is set with an initial velocity toward the character, and a physics simulation deals with the rest.
The result is a goofy character that follows the ball. There was no manual keyframing involved in the making of the animation.
This way of doing things is closer in spirit to Sketchpad's. We setup the initial conditions, we instruct the computer with goals and constraints, and the solvers do the rest. It is a wonderful way to experiment. The possibilities are immense. I'm often paralyzed by the combinatorial explosion of the interesting situations we can setup.
However, with this method of design, a great deal of blind trial and error is necessary to build a meaningful scene. It is like reverse engineering biological evolution. Most experiments won't snap into an "aha!" resolution.
It took me several attempts to find the right axis and degrees of freedom I should constrain to, as well as a careful setup of the initial conditions, before I got the animation above. And I still should tweak the animation to improve the character performance: I could add a delay between the ball position and the head tracking, and make the character body react to the ball when it hits it.
The learning curve required to art direct physics and constraints based animations is steep. I think there is a huge opportunity to make the discovery process more fun and natural with improved user interfaces and feedback loops.
The tools that were developed for digital computer animation and 3D visual effects, unlike 2D drawing programs, seem to be a direct descendant of Sketchpad. I believe this is not a coincidence. We can trace the inception of 3D graphics to the ARPA project and the University of Utah in the 60s and 70s. For example, Edwin Catmull, the inventor of texture mapping and other fundamental 3D graphics routines, now president of Pixar and Disney Animation, was a student of Ivan Sutherland.
- Ivan Sutherland. Sketchpad, A Man-Machine Graphical Communication System (PDF). Sutherland's PhD thesis, 1963.
- ARPA. US government science and research fund started in 1958. Many computing pioneers (Sutherland, Douglas Engelbart, Alan Kay) and inventions (the Internet, graphical user interfaces) originated from that research group. Wikipedia.
- Edwin Catmull. 3D computer graphics pioneer. President of Pixar and Disney Animation Studios. Wikipedia.
- Texture mapping is a technique used to project a 2D texture on a 3D model. It is the way we dress up 3D objects with colors and materials. Wikipedia.