In this assignment, you are given a working dynamic simulation of an alien similar to the one you used in assignment 1. The simulation is grounded at the waist and has joints at the waist, back, lower and upper neck, shoulders, elbows, and wrists. The simulation can be found in /net/hg27/animation/class/torso. There is a README file in this directory that will give some basic instructions on running the simulation and using the interface.
Currently the simulation has a simple state-machine controller like those discussed in class. This example controller switches states according to contact information and state information. A collision model provides contact information for state changes in this sample code. The different states set new values for the gains and the desired values for a PD-Servo like the one described in class. You will modify this state machine controller to perform an interesting sequence of behaviors. Some suggested behaviors include:
The behaviors you simulate should be believable and obey reasonable joint limits. Your simulated motion should be at least 3 seconds long and include some body to body interaction.
This simulation includes a collision/reaction model that can keep the hands from penetrating the other body parts and each other. In this way, each simulated hand may be used to contact a body part (chest, head, arm, etc.) and the two rigid bodies will respond accordingly. Note that the hands are the only parts that are being tested with the other parts, so the lower arm can still penetrate the chest for example. The collision code can be turned on and off to speed up the calculations as well. However, your final animation should include some behavior where body/hand contact is exercised.
Once you are satisfied with your motion in the simulation environment, you will write a motion track and import your motion into Alias. The program provides a method for recording a motion track by setting the global time clock to zero at the beginning of the motion, running the simulation and setting the variable "trackdmp" to 1 when you are ready to record the motion. An output file called output.mot will be generated.
To load your motion into Alias:
This will create a menu item under the file menu called "Load Motion Track" which will load the track file you saved from your simulation. The motion will take a few seconds to load but then can be played back like the wire files from assignment 1. Have fun decorating and rendering your scene.
You will render images and create a moviefile in the same way you did in assignment one. You should turn in a pointer to your images and moviefile. You will describe your findings in a short report. Your report should include:
For this assignment you should submit a pointer to your documented code, your report (or hard copy if you prefer), and movie/image files.
Grading will be broken down as follows:
Total .........25
Motion.......10
Contact........5
Report.........5
Creativity...5*
*Please, be creative. This assignment is an open-ended one. The requirements are meant to exercise your technical and creative skills. If any of these requirements restrict your ideas, feel free to contact us to discuss possible modifications to the assignment.