In this assignment, you are given a working dynamic simulation of a two-legged creature, a biped, and are asked to write a new controller for this simulation. The biped has rotary hips and telescoping joints. Thus, the biped can rotate a hip in a particular direction and extend/retract its lower leg. It uses these degrees of freedom to locomote on a flat ground plane (the xy plane). The simulation can be found in /net/hn41/animation_class/biped. There is a README file in this directory that will give a basic introduction to the simulation files, variables, etc.
Currently the simulation performs a hopping gait. Hopping is a gait where both legs move in unison. You will modify the existing controller so that the creature performs a running gait. Running uses alternating legs like we discussed in class. Control for legged creatures was discussed in class.
Once you have created your running controller, you will create an animation in which the biped navigates around an "interesting" world that you design. In order to create objects in the environment, you will modify mygraphics.C and position blocks in appropriate places using my_add_cube. Your creature should interact with these obstacles in appropriate ways (turning to avoid them, hopping over them, etc.). A slalom course is one possible approach to this section of the assignment. The biped should not run in a straight line for the entire animation.
You will capture images by pressing F3 to start and F4 to stop capturing images from within the Inventor window. (NOTE: there is a renderer memory leak, so be forewarned). The camera will automatically track the biped. Finally, you will describe your findings in a short report. Your report should include:
1) what you did to modify the controller
2) how you made the biped interact with its environment
3) what you learned about controlling dynamic simulations
4) your final impression of dynamic simulations as a method of animating
For this assignment you will follow the same turn-in procedure as for the other assignment. You should submit a pointer to your movie files, a copy of your documented code (follow the procedures below, for this), and a pointer to your report.
For the code submission follow this procedure:
1. All of your files should be in one directory with no other files
(especially no image files, please). Suppose they're in hw4/
2. Go to the directory above hw4.
3. tar cf your_name.tar hw4 <-- substitute your name!
4. uuencode your_name.tar your_name.tar > your_name.tar.uu
5. email your_name.tar.uu to me.
Please, be creative. This assignment is an open-ended one. The requirements are meant to exercise your technical and creative skills.
Functionality: 50%
Comments:10%
Report:30%
Movies:10%