CPSC440 - Collaborative Game Development Spring 2010
Tuesday 7-9:50 - LLB16
Part of the Minor
in Game Development At Chapman University
Games Development will cover Game Engine Development. We will be using Visual Studio Professional, XNA 3.1 and our primary languages will be C# and Lua.
This course will require students to write copious amounts
of C# and Lua (and possibly python) code over the semester. At the end of the
course, students will have built an innovative game using the engine (Panther Game Engine) developed in the previous semester.
Students are required to have a detailed understanding
of Java or C# programming, Data Structures and Discrete Math. Students at
a minimum should have completed (and thoroughly enjoyed) CPSC236. 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# 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.
Open Source projects require that all communication go through a mailing list. Side conversations about the project are strictly frowned upon and will cause immediate and negative responses. Everyone on the project needs to be informed of all decisions and questions even if they are mundane or small issues.
All questions about assignments and programming projects
should also go through the Panther Game Engine mailing list. You are required to join the mailing list for this class.
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 LLB16. If you make arrangements
ahead of time I will be sure to be there during those hours.
This book isrequired for the class.
XNA 3.0 Game Programming Recipes: A Problem-Solution Approach
Optional and Highly Recommended
Programming In Lua - Second Edition
Available Online: http://www.lua.org/pil/
Beginning Lua Programming
3D Game Engine Programming This book doesn't cover any of the XNA topics and doesn't really relate to the class, but it is a good book on what game engine programming is all about.
XNA Game Studio 3.0 Unleashed
Graphics - Principles and PracticeThe
definitive guide to computer graphics. Not required for class, but
required for real world work.
If you want to work on homework outside the lab,
you will be required to have a copy the Visual Studio Professional 2008. It is available to all Chapman Computer Science Students. Please contact the CS department.
You will also need XNA 3.1 which is freely downloaded from Microsoft.
Tortoise SVN will be needed to retrieve and manage project source code.
You should also consider purchasing 3dsMax. $150 for a 13 month student license or $350 for a perpetual student license.
Grading in the course will
include attendance, weekly projects, Thursday/Monday status messages, one mid-term
test, and one final . The percentage of your
grade for each of these items is outlined in the table below. There will either be an assignment each week or you will commit to a specific project on the Panther Game Engine or course game and have it completed by the following week. We will be using Agile Software Development Methodologies to work on a large group project.
||Percentage Of Grade
|Weekly status messages and scrum meetings
Why Attendance? I have found that attendance counts for a lot in my classes even when I don't count it. I could probably make a graph of attendance and final grade and they would be pretty close. This is not because I weigh attendance heavily, it is because there is a lot of information in every class and missing one class will negatively effect your grade because you will not have that information.
Letter grades will be assigned
based on the following table.
We will have 50 points of homework due every week. Each assignment for each person may be unique.
Half the students are doing Imagine Cup. For them there will be 50 points every week. If they reach the second round, they will receive 100% of the homework points for the weeks up to and including March 15. If they do not reach the second round they will receive 75% of the homework points for those same weeks.
||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 game engines. Students are
expected to finish the assignments on time. Late
assignments will only be worth half credit as the deadline is part
of the assignment. This will be an ongoing development effort and late assignments will have zero value to the final development effort. Late assignments must be turned in within 1 week
of the due date or they receive 0 credit.
Each week you will either be given a programming assignment or commit to finishing a specific item on our open source project, Panther Game Engine. These assignments or commitments will count for the 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 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.
There will be a midterm on March 23rd and a final exam
on May 18th. 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 lab computers,
the tests will be very difficult.
The final will cover the entire semester but will
mostly focus on the game we will be building throughout the semester .
||no class - spring break
||Final Exam - 7pm-9:30pm