|
The purpose of this assignment is to help you understand how to build and manipulate objects in 3D space.
SpecificationsCreate a program that allows the user to create a train track along your terrain and to animate a train that moves along that track. Optionally, the track can be specified as an image that is the same size as the one that represents the terrain, but in which white indicates there is no track on that area of terrain and black indicates track is present. The most basic track would be a single thick line lying on the terrain. The most basic train can be drawn as a rectangular box with something to distinguish its front from back. The train should simply stop if it runs off the tracks (crashes are extra credit :). If no track image is specified, or if the user wants to modify the basic track, she must be able to interact with the elements in your scene. However, interacting with objects in 3D is a very hard problem --- especially given that your primary input device, the mouse, is a 2D pointer. The most basic user interface would treat the 3D space as a 2D grid by providing a top-down orthographic view of the world and allowing the user to put pre-built track pieces down in grid-size pieces. While this is not the most flexible interface, it is probably a good one to implement first (and then improve as time permits). The user of your program should be able to control a variety of options within your scene using the keyboard. You may choose which keys control which functions, but make sure they are clearly documented in your README file. Allow the user the following controls
Extra Credit
To get you started, here are some extra credit ideas
Resources
|
|
|