TermanatorDesign DocumentDonald EngRodrigo IpinceKevin LuuMentoring TA:Brian SchmidtDecember 12, 2007AbstractThis project consists on the design and implementation of a first-person shootinggame with a little twist. The player will be taking the role of the “Termanator,” withthe mission to kill as many creatures as possible. As the game progresses, creatureswill be coming at the player at increasing speeds, incrementing the game’s difficulty.To stay alive, the player must destroy each creature by shooting a constant streamof projectiles. Such stream is controlled by the Termanator through a specializedgun which uses a pointer and a shaker to respectively determine the target and theintensity of the stream. If a creature gets too close to the player, the game is over, andthe score is recorded. Ultimately, the objective of the game is to obtain the highestscore, for the purpose of eternal fame.The system will consist of four main components: the devices, digital inputs,game engine, and graphics. The inputs are used to generate the power and direc-tion of the stream, so that the game engine is able to calculate the respective gameevents. The game engine will incorporate all the core functionality of the game itselfand generate a structured output for the graphics component, enabling the crea-tures and the stream to be displayed onto the screen.Contents1 Overview 42 Component Descriptions 82.1 Shaker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.1.1 Shaker - mechanical device . . . . . . . . . . . . . . . . . . . . . . . . . . 82.1.2 Pulse Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.1.3 Power Calculator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.1.4 Power Bar Sprite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2 Video Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.2.1 Camera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.2.2 Clock buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.2.3 NTSC to ZBT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.2.4 ZBT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.2.5 Video Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.3 Pixel Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.3.1 Color Space Converter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.3.2 Frame Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.3.3 Pointer Calculator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.4 Game Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.4.1 Creatures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.4.2 Projectiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.4.3 Game Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.5 Graphics Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192.5.1 Perspective Transformer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192.5.2 Sprites and Sprite Scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212.5.3 Sprite Display Pipeline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Testing and Debugging 234 Conclusion 26List of Figures1 Screenshot of Nintendo Wii’s Rayman Raving Rabbid . . . . . . . . . . . . . 42 Screenshot of Termanator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 High level organization of Termanator. . . . …
View Full Document