CPSC340 - Collaborative Game Development Spring 2011
Tuesday 7-9:50 - LLB16
Part of the Minor
in Game Development At Chapman University
We will be using Visual Studio Professional 2010, XNA 4.0 and our primary languages will be C# and Lua.
This course will require students to write copious amounts
of C# and Lua code over the semester. At the end of the
course, students will have built an innovative game using XNA and possibly the engine (Panther Game Engine) developed in previous courses.
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
gtalk: wood.harter - @ - gmail.com
Chapman or gmail address for e-mail will only delay a response.
The first part of class will be individual project and we will transition into using the Panther Engine. As we move towards the engine we will be using a mailing list associated with the Panther Engine project for class communication. 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 2010. It is available to all Chapman Computer Science Students. Please contact the CS department.
You will also need XNA 4.0 which is freely downloaded from Microsoft.
Git 1.7.6 or later will be needed to retrieve and manage project source code.
We will use 3dsmax and Photoshop for art resources.
Grading in the course will
include attendance, weekly projects, 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 for those that choose to work on the Panther Engine .
||Percentage Of Grade
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 100-200 points of homework due every week. This assignment will either be assigned by me or chosen by you (and agreed to by me) to make specific progress on your final project. The first few weeks will be assigned by me as we dig into C# and XNA. There willGrades will be updated regularly on blackboard.
We will learn about Agile Software Development Principals as we work towards a finished final project. The final project can be done in groups of up to two people. If you must have more than two you will have to sell me on the value of having more than two people.
||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 games and 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 your own project or the 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 October 20th and a final exam
on Dec 15th. The midterm and the final are each worth 15% 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.
||Thanksgiving (no class)
||Final Exam - 7pm-9:30pm