Needs to be completed by tues 13th nov 4pm(GMT)
Using C in OpenGL:
The program should produce an initial display as follows: Three rectangles (the targets) at the top of the display window should be filled with yellow and evenly spaced out along the x-axis, two indents or lines should appaer on each edge a quarter of the way up the screen toward the bottom(the boundary lines), the simple missile near the centre bottom of the window should be filled with white.
The object of the game is for the user to fire the missile at the targets.
The user can move the position of the missile by clicking the left-mouse button. The current missile should then disappear and the new missile position should be drawn centred on the mouse position ( the ‘gluUnProject’ command should be used for this). Note that the position of the missile can only be changed to somewhere below the two white boundary lines at the bottom of the display. Should the user click the left-mouse button above these lines, then there should be no effect. The missile should always face upwards ??" this is the forward position of the missile.
The missile is fired vertically upward by the user clicking the right mouse button. Should the missile hit one of the targets, then that target should disappear (and not re-appear throughout the rest of the program execution). The missile is regarded as having hit the target if the point at the tip of its pointed end falls inside the rectangle.
The game involves only one missile, but at any time, the user can re-start the missile by clicking the left mouse button with the mouse pointer below the boundary lines. This should cause the missile to appear at the position of the mouse, pointing upwards, ready for firing as described above.
The program should terminate when all three targets have been hit.
Suppose that we wished to change the program written for part A to meet the following additional requirements:
* There should be a greater number of targets.
* Allow the user to turn the missile to the right or left by pressing the ‘r’ or ‘l’ keys. Pressing ‘r’ would rotate the missile by 2degrees clockwise about its centre point. Once the missile is fired it should travel in the direction of its pointed end.
(use: X-direction = -LENGTH * sin(a) and Y-direction = LENGTH * COS(A)).
1) Complete and fully-functional working program(s) in executable form as well as complete source code along with thorough annotations.
2) Part B shoud only be given as a seperate peice of coding...it is a few simple additions to the initial project
3) Exclusive and complete copyrights to all work purchased. (No GPL, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site).
Submit a readable, self-documenting source code listing, together with a statement as to whether your program meets the specification. Any remaining faults should be identified and, where possible, suggestions on how they could be rectified should be given.
Must run on a linux system using the 'cc' compiler.