CPSC240 - Game Development Spring 07
Tuesday 7-9:50 - LLB13
Part of the Minor
in Game Development At Chapman University
(note, this is different than last year)
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++.
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.
Harter. Adjunct Professor
e-mail: wood - @ - side8.com
Chapman address for e-mail will only delay a response.
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
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.
These are the actual books required for the Spring
Game Programmers Guide to Torque
Game Programming All In One - Second Edition
Optional and Highly Recommended
Advanced 3D Game Programming All In One
Theory Of Fun by
Ralph Koster. This is a great book on what makes games fun.
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
Graphics - Principles and PracticeThe
definitive guide to computer graphics. Not required for class, but
required for real world work.
for Game Developers -
We will not use the book directly. It is just a good book.
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.
Scripting Game Programming A
decent book on unreal script and good companion to the above book.
Game Programming in Java by
Andrew Davison. This is last years book. It's a decent book and could
be useful for reference.
Games In Java.
A well written book but he uses his own API for drawing 3D graphics
and it is better to use Java3D.
Book On Blender Animations.
This is a more advanced book on Blender and a good resource.
Books on C or C++
Book On C is
a great reference book for C 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.
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.
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 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
Letter grades will be assigned
based on the following table.
||93 and up
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
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.
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.
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.
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
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
||Dev Days Remaining
||Course Overview and C/Win32 game
||TGB overview and tutorials
||TGB full circle games
||TGE Game Building and Modeling Introduction
||Networking, Modeling and Animations, Interiors
||Interiors continued, More complex uv mapping,
Blender, programatic movement
||Focus on final projects, installers, triggers
||Mid Term, torque
internals, physics, pathing
||42... (date changed)
||Torque Script, Datablocks, Agile Programming
||Camera Pathing, Camera Control
||14 (marketing materials)
||Final Exam - 7pm-9:30pm
||Show and Vote Final Games
||0 - Presentation Day