CS 391: Selected Topics: Game Engine Development

Course Information


Class Meetings

Tuesday, Thursday 8:30 to 9:45 am.

Instructor(s)

Instructor:Dr. Clifton Presser
Office:Glatfelter 210
Phone:337-6639
Email: cpresser@gettysburg.edu
Office Hours: Monday through Friday 10:00 am to 11:00 am.
Drop in any time my door is open.

Class web site

You are responsible for checking the class web site regularly. Announcements and assignments will be posted. This semester we are using the Moodle course management system.

Prerequisites

CS 216 or consent of the instructor.

Text

Madhav, Sanjay. Game Programming Algorithms and Techniques: A Platform-Agnostic Approach. Addison-Wesley. 2014.

Topics

This course will take a bottom up approach to game development so we will investigate and build various components of games and game engines.
C++ Programming Animations Rendering Engines
Memory Management 3D Math (Vectors, Matrices, Quaternions) Random Numbers
Terrain Generation Buffered and Unbuffered Input File management
Scripting Network Gaming Game AI
Collision Ray Casting Graphical User Interfaces
Particle Systems 3D Audio Rigid Body Dynamics

Course Goals

In this course students will:

Curricular Goals

CS391 fulfills the Quantitative, Inductive and Deductive Reasoning goal of the Gettysburg Curriculum. The course components that address this goal are:

Cluster Opportunity

This class provides a particularly good opportunity for a course cluster project that fulfills the Integrative Thinking Goal of the Gettysburg Curriculum. One could write a game, simulation or interactive experience based on a topic from a class in another discipline.

Course Credit

According to the College Catalog's section on Degree Requirements: "For transfer of credit to other institutions, the College recommends equating one course unit with 4 semester hours." This valuation is in alignment with our 32 course requirement for graduation.

The federal government defines a credit hour as the equivalent amount of work as 50 minutes in class and two hours out of class for one semester.

Therefore, this course should be the equivalent work of three hours and twenty minutes in class and 8 hours outside of class. Since the course meets two and a half hours per week, the schedule contains a "fourth hour" item each week which is some program, project, or activity outside of the normal homework assignments that you must complete.

Attendance Policy

You are expected to attend class regularly and keep up with the reading. You are expected to read the material BEFORE coming to class on the day that it is discussed. A comprehensive list of readings is given on the calendar on the class web page.

We will build examples during class time. Some example will span multiple class meetings. If you miss a class, it is your responsibility to be prepared for the next one.

Grading Policy

Homework assignments and projects must be submitted at the beginning of class on the day they are due. Late homework will be penalized 10% per day. Homework submitted after the assignment is graded or after an answer key is distributed will NOT be accepted. Homework will be graded on the second class meeting or one week after they are completed, whichever is later. Otherwise, all students who have turned the assignment in on time will receive a 10% bonus. Due to some peer evaluation, assignments may not be considered completed on the same day they are submitted.

Your grade in this course will be determined by dividing the total number of points you receive on assessments by the total number of possible points in the course and multiplying by 100. Assessments may include programs, tests, quizzes, a final exam, colloquium attendance and anything else I can find to assign a point value to.

Programs will be graded according to a specification and rubric provided with the assignment.

Each student is required to attend at least two Computer Science colloquia during the semester. Colloquia are generally held Thursdays from 11:30 to 12:30 and include lunch. Colloquia attendance will be worth approximately 3% of your total grade. If your schedule prevents you from attending colloquia, please let me know as early as possible.

Grade Ranges

A+> 98 and exceptional work*A93 - 100A-90 - 92.99
B+88 - 89.99B83 - 87.99B-80 -82.99
C+78 - 79.99C73 - 77.99C-70 -72.99
D+68 - 69.99D60 - 67.99Fbelow 60

* An A+ requires that you have a high A average and go above and beyond expectations for the course. This may be in adding extra functionality to a program or investigate a topic in greater depth than we cover in class.

Honor Code and Honor Code Violations

All Gettysburg College students are expected to abide by the Honor Code. All work in this course is to be done individually unless the instructor specifically states otherwise. This includes assigned projects as well as regular class work. The use of the computer may make it more tempting and easier to pass off another person’s work as your own. This is UNACCEPTABLE. The department is always very aggressive about enforcement of the Honor Code.

Calendar

Important dates for this semester. Other events will be posted on the Moodle site.
Day Date Event
F01/30/15Last day to add/drop.
T03/10/15Spring Break (no class)
Th03/12/15Spring Break (no class)
F04/3/15Last day to drop with a W.
M05/1/15Celebration
M05/2/15Celebration
Sunday05/03/15Final Exam 1:30 pm

Please send questions and comments to: cpresser@gettysburg.edu