CPE 471 Final Project: Tennis Animation

Tania Kabiraj

For my final project, I created an animation of two dummies playing tennis together.

Snapshots of project


example image example image example image example image

Controls

  • WASD movement using pitch and yaw camera controls
  • Mouse scrolling to look around
  • "Q" and "E" move the light side to side
  • Hierarchical Modeling

    I used hierarchical modeling for the dummies and rackets. I identified the parts of the dummy mesh that correspond to the knees and the shoulder. I rotate the legs and shoulder when the ball is on the same side of the court as the dummy and the rotation of the shoulder is inversely proportional to the distance between the dummy and the ball.

    Collision Detecting

    I used collision detecting while moving around the camera. Because of this implementation, the camera is not allowed to go into the court, go into the bleachers, or go outside of the skybox.
    The ball also uses collision detecting so that when it hits the racket or the ground, it changes direction and speed.

    Coloring Meshes

    I used Blinn-Phong lighting to imitate lighting from the sun. For the dummy, ball, and bleachers, I set each of their colors and shininess and I found textures to use for the court and net. For the skybox, I found a cube box and cropped them into six squares to use as the background.

    Resources

  • Professor Wood and Project/Lab Base Code
  • Free .obj Models - https://free3d.com/
  • Skybox Textures - http://www.humus.name/index.php?page=Textures