Project 3

Dynamic Simulation for Upper Body Motion

 

Simulation Control

    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.

 
 

Body Interaction

    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.

 
 

Controlling Dynamic Simulations

    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.

 
 

Dynamic Simulations for Animation

    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.

 
Final movie: gameover.mov













1