In 1993, I came to Los Angeles. Initially, I was working for a company called RFX - acting as a support person supporting digital artists in Hollywood who were working in the early efforts into digital film effects. In this job, I was privileged to meet many clever folks, and to learn much from them, but few have taught me so much as my friend Kevin.
Kevin Mack has worked in the field of digital effects since before such a field existed, and his accomplishments are many, not the least of which being the Academy Award he won for best visual effects in 1999 for his work on "What Dreams may Come". That's a story in itself, but I'll stick to the point.
In 1994, I had left RFX, and moved on to a startup effects company called Digital Domain. There we were given the opportunity to demonstrate some of the concepts that Kevin and I had been developing independently. Since seeing the movie, "Jurrassic Park", we had been highly motivated to develop what has since become known as a Procedural Anatomy System. The essence of the system is the construction of a physical simulation model of the interactions of the bones, muscles, and skin of a digitally created character. Films that came before H.A.R.D. (and most that have come since) have relied upon simple surface manifold deformations to represent the anatomy of digital creatures. This approach necessitates the modelling of the surface effects of muscles and bones by direct manipulation of the surface geometry of the skin, which is far more complex than it needs to be, from the point of view of an animator wishing to show the rippling muscles of a T-Rex as it chases a Jeep through the jungle, for example.
Our approach was to create a more complex model of the geometry, and pass much of the work of the animation off to the computer, which is far better at accurately portraying physics than the very best character animator could ever hope to be. The animator is still the driving factor in the development of a shot rendered through the H.A.R.D. pipeline, but their work is in creating an emotionally compelling path for the creature to take, and the mundane details of physics (which the human eye absolutely demands, if it is to be fooled) are left in the domain of the machine, where they should be.
We started with an abstracted stick figure which could be driven by any of the standard character methods - Motion Capture, Keyframing, Motion Blending, Procedural Gait Systems - or by more sophisticated methods which we envisioned to be built upon the foundation of H.A.R.D. The basic movements of this stick figure are processed through a system of LUTs which break the simple rotation of a shoulder joint, for example, into the more complex combinations of movements that unconsciously occur amongst the Clavicle, Scapula, and Humerus in the rotation of the human arm. By this, our model would automatically parlay the intended motion of the stick figure animation into a set of anatomically feasible movements for each bone affected - within the possible range of motion of the creature. No more would we have to see the terrible "frozen shoulder" effect so often represented in television commercials which try to show the skeleton as if through a fluoroscope, but which lock the scapula and clavicle, and animate only the humerus. The ignorance of the animator of the true anatomical complexity of the motion they are representing will be automatically compensated for by the smarts built into the H.A.R.D. system.
On top of that, we built a system of tools to allow for the creation, positioning, and refinement of muscles and groups of muscles - constrained by the model to being fixed to the appropriate bones at their points of origin and insertion. With a small innovation which we called the N-Blender, we were able to model a finite number of intermediate positions for the muscles as they lay on the bones in specific configurations, and to interpolate the shape of the muscle for any other position of the bones which affect the position of the end points of the muscle. this was a bit tricky because of the complexity of the interpolation function. Between the one end of a Bicep muscle in the arm, for example, which is attached to the Scapula on the one end, and to the Radius on the other end, there are eight rotations affecting the shape of the muscle, and so the interpolation needs to be done in eight-dimensional key space - hence the N-Blender. In this example, N = 8.
The resultant interpolation of the muscle groups were then skinned by means of custom software written by Doug Roble, and Hank Driskall. Here is an image of the arm in three different stages of the process.