| 1 | = Assignment 3 - "Train Set" = |
| 2 | |
| 3 | == Project Overview == |
| 4 | |
| 5 | This outdoor scene involves a train going around in a loop, a car |
| 6 | that can be driven around, and buildings and trees to fill in the |
| 7 | landscape. |
| 8 | |
| 9 | Initially, you can walk around the scene on foot. However, it |
| 10 | is also possible to hop in the car for a ride and also to catch |
| 11 | the train as it goes by. |
| 12 | |
| 13 | The train, tracks, and road are produced by splines and a little |
| 14 | math. The viewer bobs around as if walking when on foot. |
| 15 | |
| 16 | == Interaction == |
| 17 | * Keyboard: |
| 18 | * When on foot: |
| 19 | * w,s = forward, backward |
| 20 | * a,d = strafe left, right |
| 21 | * q,e = turn left, right |
| 22 | * enter = when near the train engine or the car, gets in |
| 23 | * When in the car: |
| 24 | * w,s = forward, backward |
| 25 | * a,d = turn |
| 26 | * space = brake |
| 27 | * enter = get out of the car |
| 28 | * When on the train: |
| 29 | * w,s = forward, backward |
| 30 | * enter = get off the train |
| 31 | * Mouse: |
| 32 | * When on foot: |
| 33 | * Move the mouse with the left button down to look around |
| 34 | * When in the car: |
| 35 | * Nothing |
| 36 | * When on the train: |
| 37 | * Nothing |
| 38 | |
| 39 | == Files == |
| 40 | * README - This |
| 41 | * Makefile - 'make' to build |
| 42 | * assignment3 - executable |
| 43 | * assignment3.png - screenshot |
| 44 | * main.cpp - program entry point, callbacks, and most glut-work |
| 45 | * objects.cpp - drawing non-primitive shapes in OpenGL, mainly |
| 46 | * objects.h - declarations |
| 47 | * vertex.cpp - handy vector math routines |
| 48 | * vertex.h - declarations |
| 49 | |
| 50 | == Compilation Instructions == |
| 51 | Compiled in Linux with: |
| 52 | * gcc-3.3.1 |
| 53 | * glut-3.7.1 |