Validated by Amaya

Richard G Baldwin (512) 223-4758, NRG Room 4238, Baldwin@DickBaldwin.com, http://www.austincc.edu/baldwin

GAME 1343 Game and Simulation Programming I : C#

This is the Syllabus for classroom sections and Open Campus (PCM) sections taught by Professor Baldwin.

Syllabus

Spring 2010

08031 Lec 001|18436

NRG3 Room 3136 Saturday 9:00am-12:30pm

Revised 02/27/10

The official web page for this course is GAME 1343


Instructor: Richard G. Baldwin
Office Telephone:  512-223-4758
Office:  NRG room 4238
Office Hours: Click here for an online listing of office hours.   Other times by appointment. Call the above number or E-mail at any time.
Email address: Baldwin@DickBaldwin.com

Schedule: See the published schedule for the beginning and ending dates of the semester.

Topics for the course:
This course will cover the following five chapters in the textbook:

1. Getting Started
2. Fun with Sprites
3. User Input and Collision Detection
4. Applying Some Object-Oriented Design
5. Sound Effects and Audio (excluding XACT)

In addition, the course will cover 19 of the XNA Programming Tutorials that will be published by Prof. Baldwin here as the semester progresses.

Although the material from the five chapters of the textbook listed above will be covered in the course, the first chapter of the textbook assumes that you already have "a basic knowledge of the .NET Framework and C#."

While some of you may already have that knowledge, such knowledge is not a prerequisite for this course. Therefore, this course will need to help you attain that basic knowledge of C# and object-oriented programming (OOP) before we can apply that knowledge to the use of the XNA Game studio.

An understanding of OOP using C# is a necessary prerequisite for understanding the XNA Game Studio.

In case you have been wondering, that is the reason why we will only cover the first five chapters in the textbook.

The topics will be covered in the order given in the following list, which begins at a more fundamental level than the textbook.

Website tutorial topics

Estimated Lecture and Lab Schedule

The following table shows the estimated lecture and lab schedule.

This schedule is subject to change as the semester progresses.  The lecture and the lab are in the same room during the same time period.  Time not spent on lecture will be dedicated to students completing their lab assignments.

Week Tutorial Number Comments
01 - 01/23/10 100
102
104
Getting Started
What is C# and Why Should You Care?
What is OOP and Why Should You Care?
02 - 01/30/10 106
108
Encapsulation in C#
Inheritance in C#
03 - 02/06/10 110 Polymorphism Based on Overloaded Methods in C#
Lab Project # 1 due
04 - 02/13/10 112 Type Conversion, Casting, and Assignment Compatibility in C#
Lab Project # 2 due
05 - 02/20/10 114 Runtime Polymorphism Through Class Inheritance in C#
06 - 02/27/10 116 Runtime Polymorphism and the Object Class in C#
Lab Project # 3 due
07 - 03/06/10 118 The XNA Framework and the Game Class
08 - 03/13/10 120 Moving Your Sprite and using the Debug Class
Lab Project # 4 due
Spring Break
09 - 03/27/10 122 Frame Animation using a SpriteSheet
10 - 04/03/10 124 Using Background Images and Color Key Transparency
Lab Project # 5 due
11 - 04/10/10 126 Using OOP - A Simple Sprite Class
12 - 04/17/10 128 Improving the Sprite Class
Lab Project # 6 due
13 - 04/24/10 130 Collision Detection
14 - 05/01/10 132 A Simple Game Program with On-Screen Text
Lab Project # 7 due
15 - 05/08/10 134 Adding Sound to the Game
16 - 05/15/10 136 Putting It All Together - A 2D Arcade-Style Game
Exam
Lab Project # 8 due

Lab Project Schedule:
The lab projects must be completed and demonstrated to Professor Baldwin's satisfaction in the lab not later than the end of the class/lab period shown in the table above.

Exam Schedule:
The written exam must be completed not later than the end of the class/lab period shown in the table above.

Course Description:
WECM: Game and simulation programming. Includes advanced pointer manipulation techniques and pointer applications, points and vectors, sound, and graphics.
ACC: Uses Microsoft C#/XNA Game Studio.

Prerequisite: COSC 1315 and GAME 1303 or departmental approval.

Course Text:  See Materials and Facilities below.

Instructional Methodology: The course will have both lab and lecture.

Course Rationale:

  1. The first objective is for the student to understand and use object-oriented programming (OOP) as implemented by the C# programming language.
  2. The second objective is for the student to apply that OOP knowledge to Microsoft's XNA Game Studio to create graphical and sound effects and techniques that are useful in game programming.
  3. The third objective is for the student to demonstrate that knowledge by writing a basic 2D arcade-style game.

Requirements: See the Requirements page.

Grade Policy:  Your grade will be based both on concepts and practical application.

Grading Scale: Letter grades will be assigned as follows:
90% - 100% A
80% - 89%  B
70% - 79%  C
60% - 69%  D
 0% - 59%  F

Depending on the final scores of all the students taking the course, it is possible that a curve may be applied to the final grades before they are submitted for recording.

Materials and Facilities

C#/XNA textbook: 

Title: Learning XNA 3.0
By: Aaron Reed
Publisher: O'Reilly Media
Formats:

Print ISBN: 978-0-596-52195-0 | ISBN 10:0-596-52195-2
Ebook ISBN: 978-0-596-15691-6 | ISBN 10:0-596-15691-X

C#/XNA Game Studio online resources: 
In addition, you may need to consult various online resources for the XNA Game Studio.  (Various resources can be located using Google and I also have a large list of useful resources on my website.)

Software:
It should not be necessary for you to purchase any software in order to complete this course successfully.  All of the software that you need should either be available in the ACC lab at NRG, or is freely available for downloading via the web.

Miscellaneous Information

Course Objectives/ Learning Outcomes:
WECM: Incorporate sound and graphics in programs; develop programs that utilize 2D graphics; develop a basic 2D game; and write programs using advanced pointer techniques and applications.

ACC: Learn how to write Object-Oriented Programs using C# and how to apply that knowledge to the Microsoft XNA Game Studio.

In addition, the student will either be introduced to, or will use the following concepts, which are important workforce activities:

Transfers: 
Although it is technically possible for a student to transfer from one section to another section of the same course, this process has caused many problems in the past, and is not allowed unless the reasons for the transfer are compelling.  Students desiring to transfer between CIS/CSC courses must first obtain permission from an Assistant Dean for CIS/CSC who will initiate the paperwork.  (Note, however, that I will allow you to informally transfer between my in-class section and my distance-learning section of the same course at any time during the semester in those semesters where both are available.)

Scans Competencies:  
The following is a summary of the Scans Competencies attributable to this course with the following scale:

1 – Concept
2 – Application
3 – Advanced

Competencies not covered by this course are not listed.

C1 Time:  Selects goal-relevant activities, ranks them, allocates time, and prepares and follows schedules.

1

C5 Acquires and evaluates information.

1

C6 Organizes and maintains information.

1

C7 Interprets and communicates information.

1

C8 Uses computers to process information.

2

C15 Understands Systems:  Knows how social, organizational, and technological systems work and operates effectively with them.

1

C16 Monitors and Corrects Performance:  Distinguishes trends, predicts impacts on system operations, diagnoses systems performance, and corrects malfunctions.

1

C18 Selects Technology:  Chooses procedures, tools, or equipment, including computers and related technologies.

1

C19 Applies Technology to Task:  Understands overall intent and proper procedures for setup and operation of equipment.

2

F1 Reading:  Locates, understands, and interprets written information in prose and in documents such as manuals, graphs, and schedules.

2

F3 Arithmetic:  Performs basic computations; uses basic numerical concepts such as whole numbers, etc.

2

F4 Mathematics:  Approaches practical problems by choosing appropriately from a variety of mathematical techniques.

1

F5 Listening:  Receives, attends to, interprets, and responds to verbal messages and other cues.

1

F9 Problem Solving:  Recognizes problems and devises and implements plan of action.

1

F10 Seeing Things in the Mind’s Eye:  Organizes and processes symbols, pictures, graphs, objects, and other information.

1

F12 Reasoning:  Discovers a rule or principle underlying the relationship between two or more objects and applies it when solving a problem.

1

F13 Responsibility:  Exerts a high level of effort and perseveres towards goal attainment.

1

Incomplete:
Here is the official information that I have received regarding Incomplete grades:

A student may receive a temporary grade of "I" (Incomplete) at the end of the semester only if ALL the following conditions are satisfied:

  1. The student is unable to complete the course during the semester due to circumstances beyond their control.
  2. The student must have earned at least half of the grade points needed for a “C” by the end of the semester.
  3. The request for the grade must be made in person at the instructor’s office and necessary documents completed.
  4. To remove an “I”, the student must complete the course by two weeks before the end of the following semester.  Failure to do so will result in the grade automatically reverting to an “F”.

To give you an idea of the gravity of the situation, I don't recall ever having given a student a temporary grade of "I" during my entire teaching career at ACC.

Freedom of  Expression Policy: 
It is expected that faculty and students will respect the views of others when expressed in classroom discussions.

Academic Integrity:
A student is expected to complete his or her own projects and tests.  Students are responsible for observing the policy on academic integrity described in the Current ACC Student Handbook.

“Acts prohibited by the college for which discipline may be administered include scholastic dishonesty, including but not limited to cheating on an exam or quiz, plagiarizing, and unauthorized collaboration with another in preparing outside work.  Academic work submitted by students shall be the result of their own thought, research or self-expression.  Academic work is defined as, but not limited to tests, quizzes, whether taken electronically or on paper; projects, either individual or group; classroom presentations, and homework”. 

The penalty accessed for violations will be in accordance with the current ACC Student Handbook policy. See http://www.austincc.edu/  for more information.

Attendance Policy:
The college policy states that students are expected to attend classes and will be held responsible for all material covered in class. Regular attendance helps ensure satisfactory progress towards completion of the course.

(Students enrolled in Open Campus classes are not expected to attend class.  Prof. Baldwin does not call the roll and does not maintain an official record of attendance.)

Withdrawal Policy:
It is the student's responsibility to complete a Withdrawal Form in the Admissions Office if they wish to withdraw from this class. The instructor may withdraw students from this class if their absences exceed 10% of the total number of class meetings. The last date to withdraw for this semester is provided in the ACC Academic calendar for the semester in which the student is enrolled. It is not the responsibility of the instructor to withdraw students from the class even though the instructor has the prerogative to do so under the above listed circumstances.

A grade of "W" will be automatically assigned if the student initiates a withdrawal through the Admissions and Records office, in accordance with the requirements of that office.  If the student fails to complete the work and also fails to properly withdraw, a grade of A, B, C, D, or F will be assigned in accordance with the work that was completed.

ALERT:  New state law for new students:
No more than six course withdrawals throughout your undergraduate education, regardless of how many colleges you attend.  Apparently, students who entered college before fall 2007 are not affected.  Ask a counselor for details.

Students with Disabilities Policy:
“Each ACC campus offers support services for students with documented physical or psychological disabilities. Students with disabilities must request reasonable accommodations through the Office for Students with Disabilities on the campus where they expect to take the majority of their classes. Students are encouraged to make this request three weeks before the start of the semester. (Refer to the Current ACC Student Handbook)”

Testing Center Policy (Open Campus Sections Only):
Visit the ACC web site at http://www.austincc.edu/. Select Search, and then search for the keywords testing center.

-end-

File: GAME1343Syl.htm