CS 583 3d Game Programming Topics developed in Course
The course depends on using a specific game engine each semester it is taught. There are published texts that provide the needed software, i.e. the game engine and its development tools. The course has used the texts:
3D Game Programming All in One by Kenneth
C. Finney, Thomson Course Technology Publisher,
http://www.course.com/catalog/product.cfm?isbn=1-59200-136-X&CFID=8524791&CFTOKEN=62737953
Game Programmer’s Guide to Torque, Edward F. Maurina III, GG Press / A.K. Peters Ltd.,
http://gamers.hallofworlds.com/products/gpgt/ (from author) or http://www.garagegames.com/pg/product/view.php?id=87 (from publisher)
There is also the opportunity to use the Microsoft XNA Game Development
environment for the Xbox 360 console.
The CS department does not have access to the Game Console of an Xbox
360, so the course continues to focus on using the PCs with Torque Game Engine.
The following topics are covered in 30 minute lectures out of the 1 hour 15 minute class session, discussing an overview with online links to additional materials. Since not all topics are for all students enrolled in the class, the instructor feels all students should be exposed (30 minute overview) to all topics. Subsequently, student pursue detailed info according to their own interests and skill sets.
Tests cover material indicated as “all” in the table below.
Topics Covered in CS 593 3d
Game Programming (adapted from Finney)
|
Order |
Topics |
Lecture & Discussion |
Class
Role Responsible |
|
1 |
Intro to 3D Game Develpment |
Course intro, review of text, syllabus, & lab issues. Discuss Industry, Elements of 3D Games, |
all |
|
2 |
Game Industry and the Game Development Pipeline
|
History of games from before computers and the evolving field of computer game development. The steps in game development as a software engineering process. The roles of members of the game team. |
all |
|
3 |
3D Concepts |
Coordinate systems, constructing models, rendering & transformations, programming. |
all |
|
4 |
Game Play |
Torque Script. Describe game structure. Client vs. server design issues. |
all |
|
5 |
World View of Game Programming |
How the field is perceived by
general public. Programmer
responsibility for their game. |
all |
|
6 |
Computer and Network Responsibility
|
Software Licenses, campus
expectation of student computing behavior, campus requirement of network
usage. |
all |
|
7 |
Network |
Messaging and ways it can be used. Uses for Master Server concept Common code base vs. Control code - design decisions that lead to each. |
Game_coder and Network_coder primarily |
|
8 |
Introduction to Textures |
Demonstrate Paint Shop Pro and major features. Describe UV Unwrapping and skinning process. Demonstrate. |
Artist primarily |
|
9 |
Working in a Group |
Game Industry is a team-work
environment. Students develop
understanding of the roles and skills needed to be an effective team member. |
all |
|
10 |
GUI Elements |
Describe various GUI controls, demonstrate the GUI Editor, and show relationship to .GUI file type contents. Segue discussion to structures and textures. Lead student discussion of sources of textures for use in games. |
Artist and Game_coder primarily |
|
11 |
Terrains |
Describe terrain in gaming context. Relate real-world terrain to uses in game. Discuss fidelity, spread, and freedom of terrain. Demonstrate Modeling with Milkshape. Demonstrate using the UVMapper Tool. Lead discussion of modeling techniques. |
Artist and Game_coder primarily |
|
12 |
Character Models Vehicle Models |
Describe character modeling issues.
Lead discussion on which techniques are suited to modeling which parts of a
character. |
Artist and Game_coder primarily |
|
13 |
Game Items. Weapons. Structures |
Useful game items to be modeled. |
Artist primarily |
|
14 |
Game World Environment Programming Sound |
Various environmental aspects of
games that can be modeled, and why they are needed. |
Game_coder
primarily |
|
15 |
Sound and Music The Game |
Describe sound effects (like
footsteps) and why they are important. Use of music in games - where, when,
why, how. |
Game_coder
primarily |
|
16 |
The Game Server The Game Client |
Describe importance of using
server-side code for certain game-play issues. Discuss event triggers. |
Network_coder and Game_coder primarily |
|
Final |
The End Game: Wrap-up, Presentations, and Demonstrations |
Describe testing and hosting issues. Lead round-table discussion of game ideas. |
all |