|
Falling Bodies technology notes
NEW: We take the Noodle Challenge.
Jim
Blinn of Caltech writes in the November issue of Computer
Graphics World that simulating falling strands of spaghetti
is an unsolved problem in computer graphics. With Falling Bodies,
falling noodles aren't hard, so we did a quick test. Motion only,
no fancy rendering. Click on the picture to see the movie.
Each noodle is a six-element articulated IK chain enveloped with
a Softimage flexible skin, simulated with Falling Bodies Two.
This is a rigid-body simulation, but the smooth skin makes it
look more flexible than it really is. Each joint is a 3 degree
of freedom joint, allowed +- 30 degrees of rotation in each axis.
This allows some bend and twist, but not too much. Does it fall
like a noodle? Tell us what
you think.
Anybody have a good 3D model of a fork? We want to try picking
up a noodle with it.
How we do dynamics - a short note for experts
Falling Bodies is a spring/damper simulator using
a reduced degree of freedom model to create a set of ordinary differential
equations, which are then integrated forward using both explicit
and implicit integrators. Joints are handled by the reduced degree
of freedom model using generalized coordinates. Collisions are modeled
as exponential springs. Some new techniques, covered by a pending
U.S. patent, allow Falling Bodies to deal effectively
and reliably with the very stiff numerical systems that result from
this formulation. Collision detection is based on convex polyhedra,
with a distance measure using the GJK algorithm front-ended by an
axis-oriented bounding box system.
Most other simulators for animation and games use an impulse/constraint
approach. It's inherent in the impulse/constraint approach that
collisions result in instantaneous changes in direction and velocity.
That looks subtly wrong; light and heavy objects bounce the same
way, and the viewer doesn't get the impression of weight when
a heavy object hits. We call this the "boink problem".
Our approach, using nonlinear springs to simulate collisions, provides
a more accurate simulation; heavy and light objects bounce differently.
This, incidentally, is why Falling Bodies is slower
than some of the competitive products.
Now that 1GHz PCs are shipping, this is much less of a problem than
it used to be.
Research and development
Control of Legged Locomotion
Once they can fall down, the next step is making them
smart enough not to. This is the hard road to realistic character
motion.
Other
|