|
CPSC240 - Game Development Spring 07
Chapman University
Spring 2007
Tuesday 7-9:50 - LLB13
Part of the Minor
in Game Development At Chapman University
http://www.gamedev360.com -
(note, this is different than last year)
Course Overview
Games Development will cover 3D game programming
using the Torque
Game Engine/Torque script and C/C++ code to modify the Torque Engine.
This course will require students to write copious amounts
of Torque Script, C and C++ code over the semester. At the end of the
course, students should have the ability to write any type of 3D game
they can image.
The goal for this class is to learn Torque and be
able to build a similar engine using pure C/C++.
Prerequisites
Students are required to have a detailed understanding
of Java Programming, Data Structures and Discrete Math. Students at
a minimum should have completed (and thoroughly enjoyed) CPSC231. Students
should have a lot of free time as there will be a ton (more like two
tons) of programming to complete on a weekly basis. C/C++ programming
while not required as a prerequisite will be very useful.
Instructor
W. Wood
Harter. Adjunct Professor
e-mail: wood - @ - side8.com
aim: ironholtz
yahooim: ironholtz
Using my
Chapman address for e-mail will only delay a response.
Communications
All questions about assignments and programming projects
should go through the Mailing
List. If you are not subscribed to the mailing list, or only choose
to receive the Digest you may miss important information and announcements.
If you have a really dumb programming question and don't want to post
it to the public list, please send me an e-mail directly and tell me
you don't want to be associated with the question. I will probably
cleanse it of your name and respond to the list with the question and
answer. If you have the question, others probably do too and this saves
me time answering the same question twice. I personally am confounded
by computers most of the time and have in my experience been stuck
on very simple things for days at a time. You are not alone. Once I
learned to ask the simple questions of those around me I found I was
able to work more effectively. I will not hold dumb questions against
you.
Office Hours:
I am a part time professor
and do not have a permanent office. I will be available after every
class for as long as necessary. I am also available by appointment.
Please send me e-mail for an appointment. In the past courses I have
made arrangements to meet in the computer labs on Saturdays to answer
questions. This is available as an option by request and availability.
I will try to be available from 5:30-6:30 in LLB14. If you make arrangements
ahead of time I will be sure to be there during those hours.
Required Text
These are the actual books required for the Spring
2007 class.
The
Game Programmers Guide to Torque
3D
Game Programming All In One - Second Edition
Optional and Highly Recommended
Advanced 3D Game Programming All In One
A
Theory Of Fun by
Ralph Koster. This is a great book on what makes games fun.
Tricks
of the 3D Game Programming Gurus .
This is my favorite book on game engine development. Uses C, but
this is a great book that covers all aspects of game engine development
in detail.
Optional Texts
Computer
Graphics - Principles and Practice The
definitive guide to computer graphics. Not required for class, but
required for real world work.
Physics
for Game Developers -
We will not use the book directly. It is just a good book.
Mastering
Unreal Technology: The art of level design .
This is the best book on Unreal available and was going to be required
before we switched the class to Torque.
Unreal
Scripting Game Programming A
decent book on unreal script and good companion to the above book.
Killer
Game Programming in Java by
Andrew Davison. This is last years book. It's a decent book and could
be useful for reference.
Developing
Games In Java .
A well written book but he uses his own API for drawing 3D graphics
and it is better to use Java3D.
A Good
Book On Blender Animations .
This is a more advanced book on Blender and a good resource.
Books on C or C++
A
Book On C is
a great reference book for C programming.
Programming
Windows - Petzold -
If you want to write a Windows GUI or just learn windows programming.
This is absolutely the best book you can buy. It is all in C (I don't
think any C++) so it is by far the best way to learn Windows programming.
If you aren't good at C/C++ yet, this would also be a great book
to get started with (text based hello world C and C++ examples are
completely useless for real world learning). I've spent thousands
and thousands of hours with this book on my lap. My second edition
copy was falling apart last time I looked at it.
The
C++ Programming Language - Stroustrup At
first I was not going to recommend a C++ book because the only one
I ever read was by the original creator (Stroustrup) and I was sure
that was outdated. It looks like he's kept the book updated over
the years. I do not have this book, but I did learn C++ with the
first edition. It was the only choice back then, but this book now
has good reviews and what better place than the source.
Software
If you want to work on homework outside the lab,
you will be required to have a copy the Torque
Game Engine. The cost will be $75 for students and more information
will be available here later.
Grading
Grading in the course will
include Attendance, up to 10 projects and 5 quizzes, one mid-term
test, one final test and one final project. The percentage of your
grade for each of these items is outlined in the table below.
| |
|
Percentage Of Grade |
| Attendance |
|
5% |
| Projects/Quizzes |
|
45%
|
| Final Project |
|
30% |
| Mid Term |
|
10% |
| Final |
|
10% |
| Total |
|
100% |
Letter grades will be assigned
based on the following table.
| A |
93 and up |
| A- |
90-92.99 |
| B+ |
87-89.99 |
| B |
83-86.99 |
| B- |
80-82.99 |
| C+ |
77-79.99 |
| C |
73-76.99 |
| C- |
70-72.99 |
| D+ |
67-69.99 |
| D |
63-66.99 |
| D- |
60-62.99 |
| F |
Under 60 |
Academic Integrity
Violations of academic integrity
include, but are not limited to, the following: cheating on an examination,
assignment or quiz; plagiarism on any paper or report; falsifying
data, research or report; presentation of forged documents; misrepresentation
of information in oral, online or written form.
Students in this course are expected to comply with the University
Policy on Academic Integrity. Any student suspected of violating this
obligation for any reason during the semester will be required to participate
in the procedural
process
Homework Projects
The objective of this course
is to learn the skill of programming computer games. Students are
expected to read the book and finish the assignments on time. Late
assignments will only be worth half credit as the deadline is part
of the assignment. Late assignments must be turned in within 1 week
of the due date or they receive 0 credit.
Homework projects may or
may not be assigned on a weekly basis. As the class progresses, there
will be less homework assigned as the projects become more difficult.
There will be 5-10 programming projects assigned throughout the semester.
This will count for a majority of the grade.
Note: The
easiest way to fail this course is to get behind in the homework
projects. The majority of the points in the class are the
homework projects. The midterm and final are also based on the
homework projects. If you do all of the homework projects you should
do well in the class. Start early on the projects as they will
be difficult and take a lot of time. Contact me early in the week
if you are having problems to leave plenty of time to fix the problem
and complete the project.
If you find yourself late on more than two weekly
assignments, you should consider your grade in jeopardy.
Final Project
The final programming project is worth 30% of the
grade. This project will span a number of weeks at the end of the semester
and will overlap with some homework assignments. The final project
will be a game based on the material presented in class. Each student
will be required to design and develop a game using the Torque
Game Engine. More information about the project requirements will
be made available as the semester progresses.
Tests
There will be a midterm on March 27and a final exam
on May 15. The midterm and the final are each worth 10% of the grade
(20%
total).
The midterm will be based on the course material
presented in the first half of the class. There will be programming
problems on the midterm. If you have not done the homework projects
and become familiar with the tools available on the library computers,
the tests will be very difficult.
The final will cover the entire semester but will
mostly focus on the Torque
Game Engine.
Tentative Schedule
| Date |
Topic |
Dev Days Remaining |
| Jan 30 |
Course Overview and C/Win32 game |
98 |
| Feb 6 |
TGB overview and tutorials |
91 |
| Feb 13 |
TGB full circle games |
84 |
| Feb 20 |
TGE introduction |
77 |
| Feb 27 |
TGE Game Building and Modeling Introduction |
70 |
| Mar 6 |
Networking, Modeling and Animations, Interiors |
63 |
| Mar 13 |
Interiors continued, More complex uv mapping,
Blender, programatic movement |
56 |
| Mar 20 |
Focus on final projects, installers, triggers |
49 |
| Mar 27 |
Mid Term, torque
internals, physics, pathing |
42 |
| Apr 3 |
Spring Break |
42... (date changed) |
| Apr 10 |
Torque Script, Datablocks, Agile Programming |
35 |
| Apr 17 |
Camera Pathing, Camera Control |
28 |
| Apr 24 |
no class |
21 |
| May 1 |
|
14 (marketing materials) |
| May 8 |
Final Exam - 7pm-9:30pm
- LLB14 |
7 |
| May 15 |
Show and Vote Final Games
Due |
0 - Presentation Day |
|