CSCE 4013 - Homework 5
Video Game Demonstration
Due Date - 04/08/2014 in class
1. Project Requirements:
For this homework assignment, you will be working in groups
of 3-4 students to design and specify a simple video game.
In your next homework assignment, your group will implement and
test this game. Your game must have the following properties:
- Simple game: Your team will have one week to design and
specify the game, and three weeks to implement and test the game.
For this reason, you have to keep the game as simple as possible.
Try to pick a game where the players and interactions are easy
to describe and implement using the techniques discussed in
class so far.
- 2D graphics: Building a full 3D object models is very time
consuming, so you should restrict yourselves to games with 2D
graphics. This way, you can use the OpenGL API from the last
homework to interactively display 2D objects on the screen.
- Texture maps: To make your game look more realistic, you
can use images and texture maps to "paint" the background or
display players or other objects on top of the background.
There are several OpenGL functions you can use for this purpose.
See the sample graphics programs for examples of this syntax.
- Physics-based motion: One way to make your game captivating
and immersive is to have the objects move in "natural" ways.
For example, if objects are shot through the air like cannon
balls, they should follow a parabolic arc. Similarly, when
two objects bounce off of each other, they should go in
opposite directions. Include some sort of physics motion in
- Mouse or keyboard input: We have not "graduated" to game
controllers or motion sensing devices, so plan on using the
mouse and keyboard callbacks in OpenGL to control your games.
You will probably want several objects to move in the background
on their own. You can use the idle callback to control this
2. Project Deliverables:
Now that your team has completed your video game it is time
to demonstrate what you have accomplished to the class. Each
team will be given 10 minutes to tell the class about their
video game and perform a live demo. In addition, each team
should submit their final report that includes the following:
- The name of your video game.
- The names of all team members.
- A report that describes your video game design/implementation.
- An electronic copy of your video game source code.
3. Project Submission:
In this class, we will be using electronic project submission to
make sure that all students hand their programming projects and labs
on time, and to perform automatic analysis of all programs that are
submitted. When you have completed the tasks above go to the class
web site to "Upload" your documentation (a single docx file), and
your C++ program (a tar file containing all source and your makefile).
The dates on your electronic submission will be used to verify that
you met the due date above. All late projects will receive reduced credit:
- 10% off if less than 1 day late,
- 20% off if less than 2 days late,
- 30% off if less than 3 days late,
- no credit if more than 3 days late.
You will receive partial credit for all programs that compile even
if they do not meet all program requirements, so handing projects in
on time is highly recommended.