Hi All... well i am glad that we finally have finished the 4th assignment, it is also a good sign that the final assignment of game demo is coming up soon. any way cheer up!!! we have at least collected our grade for this semester piece by piece at the end of all assignment. :)

This is our 4th assignment of Unmanned Flight Simulator for computer game programming course.

Cipherhov
I would like to name my program Cipherhov, other than the futuristic model of the plane which resemble a popular Japanese cartoon show in 1990s, there no other good reason for me to name it as cipherhov though.

Cipherhov model was constructed without any multimedia tools, I define each points using openGL vertex directly, but due to our time constraint, the model is quite limited. There are still many improvements on the model which will actually make cipherhov more attractive.

SkyBox
The skybox is constructed from 5-sided cube with sky texture mapping, the size of the sky box is customizable, programmer can easily change the maximum point for x, y, and z on sky box array. In order to improve efficiency of our computer, sometime not all side of the sky box cube is rendered. In the program, a function is devised to check, if camera location has gone outside of the box, the intersected side of the sky box is not rendered, however for further development the function should also be able to determine side of the box behind the viewer and eventually exclude that portion from rendering process.

Terrain
Terrain is constructed from a number of polygons with texture mapping; the size of the terrain can be customized easily on its function. The terrain model employs LOD model, only area surrounding the cipherhov is rendered using higher level of detail, other than that area, lower detail is used.

Collision Detection
To improve reality of the simulation, cipherhov should not go beyond the skybox. Thus collision detection algorithm is employed, this function will maintain cipherhov, to roam within the skybox and terrain range.

Control on Cipherhov
Like other spacecraft, cipherhov is able to takeoff and landing, both function are available in the program, on the click of button O, cipherhov will start to takeoff automatically until certain height and it will stop, gamer is able to control cipherhov movement when it is already finish taking off. Button L is reserved for automatic-landing function.

Further Development
Gamer has full control of cipherhov at all time, except when automatic landing and take off is activated. However cipherhov movement is limited, it can only move forward, backward, left and right. On further development, programmer will employ rotate function that will give gamer 360 degree of freedom.

Key Function
T : to move forward
B : to move backward
F : to move left
H : to move right
Rotation of camera
A : to make clockwise rotation on x and z axis
D : to make anticlockwise rotation on x and z axis
W : to make clockwise rotation on y axis
X : to make anticlockwise rotation on y axis
Take off and landing function
L : landing command
O : takeoff command
F1 : to view full screen
Esc : to quit

Source Code

Cipherhov

Acknowledgement
I would like to thank you everyone who have helped me through out this assignment.
Prof Edmond Prakash
Like Gobeawan.
Donny Iskandar
Robert A

The following are link to website that I have been visiting for consultation or some reading in order to complete this assignment.
http://apron.morrowland.com/
http://nehe.gamedev.net/
http://www.flipcode.com/tutorials/tut_skydomes.shtml

Important Notice
Please read the "readme" file before starting the simulation

back to main menu

last update: September 13, 2003