Final project - Nikhil Dvivedi. For my final project i modeled some roads and an intersection. There are buildings and a pond to make it look sorta realistic. There is a "car" that can be driven on the roads. I implemented basic collision detection so that the car cant be driven into walls or the pond. To do this i simply figured out where the car could be, and just manually checked on every movement if the car was out of the "valid" zones. If i detected the car moving out of the valid zone i would straighten out the car based on what directoin it was heading when it hit the wall. For the car i created a structure to hold all its relavent data. The structure has a float array for position another float array for direction, a float for an angle to represent what direction the car was turning, and a float for velocity. The direction vector was always unitized so when the car turned i would calculate a rotation matrix and then multiply it by the current direction vector. When i needed to calculate the next position for the car i would take the current position vector and add it to the directoin vector mulitiplied by the current velocity to get the new position vector. After this i would do the collision detection stuff described above. The rest of the stuff was pretty straight forward, using quadstrips for all the other surfaces and putting textures onto them. I did almost everything i wanted to, but if i had maybe 10 more hours i would do a more advanced collision detection system. Instead of just straightening out the car when it a wall, which gives the car a very jerky animation when it hits a wall, i would have slowly adjusted the angle until it was straignted out so it would be a smoother looking animation. I also would have like to implement traffic lights at the intersection that would actually change between red/green/yellow realistically. Lastly i would have done a better model for the car.