Three main factors control this simulation.
Time, angles of joints, and body part collisions with the hand affect the
control function of the simulation.
I maintained time in a static integer, incrementing with each pass through the simulation. With a time step of 0.000666 seconds, every 1500 passes through the simulation controller represented one second of real time. This measure of time controls some of the motions in the animation. As the time variable passes a certain moments, preset gains and desired angles are sent to the PD-Servo. Some actions are explicitly set in time. For example at exactly zero seconds into the simulation, the arms begin moving up towards the head. Other actions are offset by a certain amount of time. For example, at some point, the head may be set to change direction in 1/3 of a second from the current time. The directions of those motions will be determined by the angles of the joints. Motions in the animation, such as the swinging of the head, back and forth, are controlled by the angle of the neck. As the angle in the Z orientation passes one radian, a new desired is set in the opposite direction. The arms, oscillating back and forth in the last two seconds are also controlled in a similar manner. The right hand collision with the head causes the swinging of the head to initiate. The contact with the hand to the head is also used in the salute. |
In one scene the alien is acting out a short
scene from the movie Aliens.
Bill Paxton loses his grip on reality because the aliens have just killed off most of his platoon. The alien brings his hands up to his head in a form of lamentation. The when the hands sense touching the head, the head begins to swing back and forth. The lamenting alien then starts asking, "What are we going to do?" with its arms oscillating back and forth, just as the neck did in the first part of the animation. In the animation with the salute, when the hand is sensed on the head, it paused there for a second, and then dropped back down. |
I learned that simulations are not easy.
There were a lot of obstacles along the way of this assignment. Probably
more than the first two combined. This statement is not meant to
be a criticism, but rather an acknoledgement of how complex a simulation
can be.
The assignment also had a great deal of flexibility. This left room to explore as much as we needed or wanted to learn. I finally understand gimble lock and why we use quaternions. This assignments many components certainly kept it interesting. In learning the code and looking through how intricate the data structure can become, I gained a pretty good understanding of how complex these systems can become. Panoptes was a little tricky at first too, not quite like most programs in it's layout. Once the structure and purpose of the program were explained, however, Panoptes really helped me code the simulation. |
From my experience with the various animation
techniques this quarter, I have to say, simulations are significantly harder
to implement than key framing. Much of this is argueably due to the
the tools available. I would hasten to add also, that I had much
more fun with the two simulation assignments, than with the key framing
and motion capture manipulation.
Animation by simulation is certainly not for the computer deficient. I don't think there is a better way to animate particles. On the other hand, I don't see places like Pixar using this to animate their characters. Not yet anyway. |