------------------ HyperSpace Assault Michael Pang ------------------ HyperSpace Assault is a 3D space flight simulator. Your job is to survive a barrage of bullets from turrets to huge battleships, while destroying them. There will be obstacles in space where you have to fly through narrow gaps to destroy your enemies. So good luck and try not to crash :-) The game features: - Navigation: pilots can fly through the 3D world and control the plane's direction with pitch and roll - Multiple Camera View: players can play the game in either the first person view or third person view. The game automatically zooms out to third person view if player is destroyed, showing the explosion of the plane - Muliple Players: In third person view, a player can control the plane while another player can act as a gunner and shoot from the behind - Picking: The gunner in the third person view uses picking shoot bullets - Custom Mouse Cursor: The gunner has its own mouse cursor for better aim - Collision Detection: All objects, except the particles, have collision detection, offering players a realistic space flight simulator - Bump Mapping: Used to create a variety of environment for the player to fly through - Enemy AI: Turrets and battleship don't just fire at random direction. They will fire at the player - Particle System: Every destroyable object, including the player, will explode if depleted of health, creating explosion particles. - Heads On Display: The Heads On Display will display important information such as health and score - Sound: The game features sound effects (i.e. laser, explosion) and background music to give the players a thrilling experience - Full Screen Mode: The Full-Screen Mode allows the players to immerse in the game without the distractions of other windows - Menu System: The menu system allows the players to configure in game options - Pause: The game can be paused to allow the player to acess the menu system - Restricted Game Environment: The game does not allow the players to fly to infinite space, so they will not be lost in the emptiness of space. - Propulsion Effect: Particles are used to emulate the propulsion of the plane - Nebula Effect: The nebula effect can be turned on from the menu or keyboard keys to provide the players a different atmosphere. - Motion Blur: Motion Blur is used to display the changing of acceleration. - Interactive Title Screen: In the title screen, the player can play around with the position of the plane - Reflection: In the title screen, there is reflection under the plane. When the user moves the plane, the reflection is updated as well. - Game Beaten Screen: When all enemies are destroyed, the game beaten screen is displayed congraduating the user - Scrolling Credits: For the sake of trying to fully emulate a real game :-P - Framerate Stabalizer: The framerate is stablized so that the game speed is the same no matter how many objects are in the game - Optimization: if the objects in the game are behind fighter, don't render them. Controls -------- Basics: Up Arrow Pitch up Down Arrow Pitch down Left Arrow Roll left Right Arrow Roll right Spacebar Shoot p Pause q Quit The following options can be configured by pausing the game and using the menu system -------------------------------------------------------------------------------------- Camera: 2 First Person View 3 Third Person View Window: F1 Toggle between window and full-screen mode Controls: c Toggle between different pitch control (i.e. up arrow may be pitch up/down) f Toggle between the nebula effect i Toggle between invincibility -------------------------------------------------------------------------------------- Misc: 0 Toggle between wireframe and normal mode \ Backdoor to display game beaten screen Inspirations ------------ Models + Converters: http://www.turbosquid.com http://www.ctrlview.com http://www.righthemisphere.com/products/dexp/ Code: Beginning OpenGL by Dave Astel and Kevin Hawkins http://www.xmission.com/%7Enate/tutors.html http://www.morrowland.com/apron/article/gl/boundingbox/index.php http://www.flipcode.com/cgi-bin/fcmsg.cgi?thread_show=24270 http://www.lighthouse3d.com/opengl/glut/index.php?bmpfont http://www.opengl.org/resources/faq/technical/selection.htm http://www.gamedev.net/reference/articles/article2053.asp http://nehe.gamedev.net http://www.york.ac.uk/services/cserv/sw/graphics/OPENGL/L24b.html http://60hz.csse.uwa.edu.au/workshop/workshop0/workshop2b.html Idea: http://www.namco.com/games/acecombat5/ --> Who knew flying through narrow gaps can be so much fun :-D