|
Final Game Projects: |
Click here for gallery!
|
|
Professor: |
Charles Rich (rich) Office Hours: Mon/Fri 3-4pm (FL B25b)
|
|
Course Description: |
This course focuses on the application of advanced Computer Science topics as they impact game development. Networking and distributed systems issues are addressed, including scalability and latency compensation techniques, for designing games for a online multi-player environments. AI, graphics and physics techniques specific to game development are discussed. Students will implement games or parts of games that apply advanced Computer Science topics.
Recommended Background: IMGD 3000
Course Objectives and Outcomes
|
|
Teaching Assistant: |
Jia Wang (wangjia) Office Hours: Mon 6-7pm, Wed 3-4pm (FL 222)
|
|
Lectures: |
Mon/Tues/Thurs/Fri, 2:00pm - 2:50pm (SL 305) |
|
Lab (Required): |
Weds, 4:00pm - 4:50pm (FL 222 - jointly with IMGD 4500) |
|
Text Books: |
Design3 Video Tutorials (Subscription required--get code from instructor)
Allen Jones and Adam Freeman, C# for Java Developers, Microsoft Press, 2003. (Optional)
Mat Buckland, Programming Game AI by Example, Wordware, 2005.
(Optional--this book will also be used for IMGD 4100, AI for Interactive Media and Games)
|
|
Detailed Information: |
Lectures, Assignments & Project Milestones (pdf)
(Schedule is subject to change!)
Individual Homework: The "10% Solution"
Individual Optional (Extra Credit): The Firing Solution
Game Project:
|
Lecture Notes (posted after lectures): |
Week 1: Game Engines,
Scripting
Week 2: Basic Physics,
Steering
Week 3: Decision Trees/State Machines,
Advanced Pathfinding,
Behavior Trees in Halo
Week 4: Advanced Camera Control, Game Audio
Week 5: Networked Game Development
Week 6: Shader/GPU Programming
Week 7: Procedural Content Generation, Novel Input Controls
|
|
Discussion Forum: |
GDC Forums IMGD-4000 > D-Term 2012 Thread
|
|
Grading: |
The various components of the course will contribute to the overall grade
in the following proportions.
- 10% Solution (Individual Homework): 10%
- Final Game Project Technical Milestone (Mon, Apr 2): 10%
(All tech students in a group will receive the same
grade for this component, unless there are exceptional circumstances)
To receive full credit, this milestone must demonstrate at least partial implementation of the first four elements listed under grade "B" below.
Include a README.txt in your project describing the technical components for which
you are claiming credit (include class names).
- Mid-term Exam: 15%
- Final Exam: 15%
- Technical elements of final game project: 40%
(All tech students in a group will receive the same
grade for this component, unless there are exceptional circumstances)
To receive a grade of at least "B" on the technical elements, the final game project must include:
- basic physics (using Unity Rigid Body, Collider and Mesh Collider)
- two force-based steering behaviors (see lecture)
- basic A* pathfinding (see IMGD 3000 2011 and 2012 lectures)
- hierarchical state machines (see lecture)
To receive a grade of "A" on the technical elements, the final game project must display excellent software engineering practices (modularity, documentation, testing, etc.) and include at least one of the
following items for each tech member of the team:
- two-player networking (see networking tutorial)
- an advanced pathfinding feature (see lecture)
- advanced camera control (see see lecture)
- another significant technical element requiring a comparable amount of programming (with prior approval of instructor)
Include a README.txt in the toplevel folder of your SourceForge project including, for each implemented technical component:
- A brief description of its design and functionality
- The folder and file(s) that contain the source code
- Who implemented it (give proportion of contribution, if not equal)
These components should include both the "A" and "B" level items above and other major technical components, such the GUI, etc.
- Final Game Design/Quality/Integration/Impression: 10%
(All art and tech students in a group will receive the same
grade for this component, unless there are exceptional circumstances)
The final letter grade in the course will reflect the extent to which you have
demonstrated understanding of the material and completed the
assigned work. The base level grade will be a "B" which
indicates that the basic objectives on homework, exams and project have
been met. A grade of an "A" will indicate significant achievement
beyond the basic objectives. A grade of a "C" will indicate not
all basic objectives were met, but work was satisfactory for
credit. No incomplete grades will be assigned unless there exist
exceptional, extenuating circumstances. Similarly, no makeup exams
will be given unless there exist exceptional, extenuating
circumstances.
|
|
Policies: |
Attendance
- Regular class attendance (and active participation) is expected.
- If you have an unavoidable need to be absent from the lecture, you do not need special permission, but you are responsible for the work covered.
Cheating
- Taking credit for work you did not do or getting unauthorized help on assigments or exams is cheating. If you are in doubt, ask the instructor first!
- Cheating is a serious offense, punishable by an automatic NR for the course.
- Institute policy on academic honesty will be followed in all cases.
|