DPS901/Woolooloo
GAM666/DPS901 | Weekly Schedule | Student List | Project Requirements | Teams and their Projects | Student Resources
Contents
Spacelizard : Sliddy's Adventure
Project Marking Percentage
Group work: 40% Individual work: 60% + ------------------------- Total 100%
Repository
Repo ID
dps901_123arep1
Trunk Status
- Initial Commit to trunk October 9th
- Revision 1 commit October 25th
- Flying ship with user movement
- Rail cam
- Revision 2 commit November 9th
- Introduced moving objects
- Tunnel level (stage 1)
- Ship can shoot bullets
- new and improved object Cross-hair, drawn on top of everything
- Ship tilting (actual ship movement sensation (roll, pitch, yaw))
- Revision 3 commit November 22nd
- sound effects are almost fully implemented
- collision with bounding shapes is implemented
- models for enemies have been added
- level has been redesigned, including some ship models
- Revision 4 commit November 26th
- Sound effects fully implemented
- First person camera fully implemented
- Enemies fully implemented
- HUD partially implemented
- Special effects implemented ( stars, asteroids, burner, level form )
- Game data mostly implemented ( score and health )
- Game over screen, player death
- Revision 5 commit December 2nd
- Mini-boss implemented
- Dialog box is changed a bit
- Respawn/restart added
- Power-ups implemented
- Level layout changed slightly
- Frustum culling modified
- Improved enemy "AI" (enemies shoot and move around and have formations)
- Volume control implemented
- Pause screen implemented
- Fog and background change
- Minor bugs fixed (flame, bullets, etc.)
- Ship movement smoothing
- HUD implemented with dynamic text
- Found more sound effects
- Fixed HUD texture/sprites from not displaying
Team Members' Emails
Proposal
The basic idea of our game is that you are in a flying spaceship. The way the game works is by having a camera which is moving on a fixed path along with a spaceship which you control on the screen that is unable leave the camera`s view. You are able to move the spaceship either up or down, left or right. The camera moves forward along with your ship. Along the way, you may encounter enemies which may or may not shoot at you and/or make your progress more difficult (crashing into you or shooting you down, forcing you to restart the game). You may also encounter moving or static obstacles such as asteroids or pillars/buildings. Your goals is to reach the end of the level without your health/shield falling below 0% and get as many points as possible by avoiding getting hit and destroying enemies.
Group Member Roles
Alex
- Collision Detection
- Game Play Data (damage received, enemy/environment damage)
- Enemy and Object Movement/Physics
- Ship shooting and upgrades
Neil
- Camerawork (1st person & 3rd person camera)
- Mini Map (almost impossible to do in the span of Monday December 3rd to Tuesday December 4th)
- Background Music & Sound Effects
- HUD with game related information (scores, etc.)
- Improved Controls
- Improve Dialog control box
- Pausing game
Mark
- Created models and textures for the game
- Level effects ( asteroids, stars, explosions, fog, etc)
- Reset function
- Ship animation ( afterburner, smooth movement )
- Start Game Menu
Framework and Our Project
Feature | Framework | Priority | Assigned to |
---|---|---|---|
Changeable resolution | In framework | - | - |
|
Added | High | Neil |
|
Added | Medium | Neil |
Hide HUD | In framework | - | - |
|
Complete | Medium | Neil |
|
Added | High | Alex and Mark |
Controller support | In framework | - | - |
Mouse support | In framework | - | - |
|
Added | High | Mark |
Highscore for points | Need to add | Low | Alex |
|
Need to add more | High | Mark |
|
Added, currently ship shoots limited amount of bullets | High | Alex |
|
Added | High | Alex |
Rings to fly through for points | Need to add | low | ? |
Map of the World of the Game
Click on the links to go to the picture.
Other objects in our game
Main Ship (player)
Enemies
Peon
Sentinel
Boss
Top
Side
Progress Pictures of Game
To be added later for viewing of later semesters.
Things We Learned and Tips
Mark
Alex
- In Chris's framework, there is a function for collision, it is just being able to implement it is incomplete (need to make iObject inhereit from Shape)
- Bounding spheres works properly, but you will need to change his code to track the vectors for axis aligned boxes
- If you want to do things over time, treat update like a while loop, make counters for things and test if they are larger than a certain number
- When making enemies, if you store them in an array you need to keep track of how many there are, and shift the array over if you delete some
Neil
- When changing the dialog box images, make sure to look at APIUserInput and not in APIWindows for handling dialog controls. APIUserInput is the file that handles the dialog box display (HINT: use WM_PAINT messages)
- If you ever want to add minimaps learn some of these concepts (texture rendering, viewport rendering, multiple swapchains, how to display textures on top of things on the screen)
- Sound effects: know how xwma and wav buffers differ from each other
- From what i researched, .bmp images are the easiest to use for displaying images (using BitBlt)
- Working in milestones is the way to go (establish an easy goal and work from there)
- for us our first milestone was to have a ship moving forward in the z axis with random objects around
- scene animation is hard so if you plan on doing that, do it in the beginning
- pausing the game will require to stop rendering, not the suspending of the window