OpenGL Robot


This project was to build a robot in OpenGL that could be interacted with and moved using keyboard input. The robot has six degrees of freedom which are controlled hierarchically. The robot also lives in a fairly complex OpenGL scene with multiple light sources, as well as a reflective floor using the stencil buffer, shadows with polygon offset, transparency using alpha blending, etc. There is also the ability to switch view points so that the user can either look at the scene from an independent view point, or can look out from where the robot is looking.

Implemented Features

Images


This image shows most of the interesting things in the scene, the snowman is the 'robot', and his arm contains most of the degrees of freedom. The shadows are also obvious on the floor, and the reflections can also be seen in the floor. Transparency can be seen in the truncated cone in the background, and the bezier patch is floating in the foreground. Many of the objects in the scene (the cone, floor, etc.) are also drawn using display lists to help speed up processing.


This image is taken from the robots view point of it's own hand. The other interesting thing is that the spotlight that moves with the robots head can also be seen on part of the hand.

Movie

Movieof snowball being thrown