CMPE 490 Presentation Video Game
description
Transcript of CMPE 490 Presentation Video Game
![Page 1: CMPE 490 Presentation Video Game](https://reader036.fdocuments.us/reader036/viewer/2022062305/568161cb550346895dd1b31b/html5/thumbnails/1.jpg)
Group members:
Billy KozakNathan Sinnamon
Jeff Theriault
CMPE 490 Presentation
Video Game
![Page 2: CMPE 490 Presentation Video Game](https://reader036.fdocuments.us/reader036/viewer/2022062305/568161cb550346895dd1b31b/html5/thumbnails/2.jpg)
We wanted to make a better video game than ‘Lunar Lander’
To do something we will enjoy working on
Testing = playing video games (at least in the (very, very) late stages)
The end product is fun!
Motivation
![Page 3: CMPE 490 Presentation Video Game](https://reader036.fdocuments.us/reader036/viewer/2022062305/568161cb550346895dd1b31b/html5/thumbnails/3.jpg)
Gameplay which emulates an arcade-style space shooter
Wireless controllers which use accelerometers as input
Multiplayer! (by ‘multi’ we mean 2)
Video (VGA) output
Functionality
![Page 4: CMPE 490 Presentation Video Game](https://reader036.fdocuments.us/reader036/viewer/2022062305/568161cb550346895dd1b31b/html5/thumbnails/4.jpg)
Game Concept
![Page 5: CMPE 490 Presentation Video Game](https://reader036.fdocuments.us/reader036/viewer/2022062305/568161cb550346895dd1b31b/html5/thumbnails/5.jpg)
Design:Main Unit
![Page 6: CMPE 490 Presentation Video Game](https://reader036.fdocuments.us/reader036/viewer/2022062305/568161cb550346895dd1b31b/html5/thumbnails/6.jpg)
VGA Buffer System
![Page 7: CMPE 490 Presentation Video Game](https://reader036.fdocuments.us/reader036/viewer/2022062305/568161cb550346895dd1b31b/html5/thumbnails/7.jpg)
Triple Axis Accelerometer Detect controller rotation and gestures (Wii-style)
PIC Microcontroller on-board Processes accelerometer (I2C) data Formats current state into a packet and transmits via Xbee to
Main unit ZigBee wireless communication
Cables are bad. Wireless is fun! PIC communicates with ZigBee over a serial link
Design:Controller
![Page 8: CMPE 490 Presentation Video Game](https://reader036.fdocuments.us/reader036/viewer/2022062305/568161cb550346895dd1b31b/html5/thumbnails/8.jpg)
Design:Software
![Page 9: CMPE 490 Presentation Video Game](https://reader036.fdocuments.us/reader036/viewer/2022062305/568161cb550346895dd1b31b/html5/thumbnails/9.jpg)
The game engine works by repeating 8 basic steps in a continuous loop.
• Step 1 fetches new ships from memory and places them onscreen if the correct amount of time has elapsed.
• Step 2 reads data from the controllers and updates the player ship’s positions.
• Step 3 updates locations of the enemy ships as determined by simple AI routines.
• Step 4 updates the locations of all onscreen projectiles
• Step 5 detect collisions and resolve collisions (between two or more ships or a ship and a projectile)
• Step 6 redraws every ship and projectile according to its updated position (dead ships/ projectiles are erased)
• Step 7 detect for victory or loss conditions so we can
• Step 8 update the game’s time counter and ensure that we don’t go back to step 1 until 15ms have passed
Design:Game Engine
![Page 10: CMPE 490 Presentation Video Game](https://reader036.fdocuments.us/reader036/viewer/2022062305/568161cb550346895dd1b31b/html5/thumbnails/10.jpg)
Video games are harder to make than we thought!
The benefits (and sheer terror) of “writing it yourself”
Conclusion
![Page 11: CMPE 490 Presentation Video Game](https://reader036.fdocuments.us/reader036/viewer/2022062305/568161cb550346895dd1b31b/html5/thumbnails/11.jpg)
Questions?