Abstract

Abstract This paper describes our experiences in designing and implementing a junior/senior level undergraduate coursein Game Programming at Arizona State University. We highlight the pedagogical methods employed during eachof the three semesters that the class was offered. We compare our approach with established teaching methodsand highlight the advantages of implementing our novel approach for teaching game development. We establisha strong connection between teaching game programming and computer graphics and show how an introductorygame programming class can be an excellent way for getting junior and senior level undergraduate studentsexcited about computer graphics. Categories and Subject Descriptors (according to ACM CCS) : K.3.1 [Computer Uses in Education]: Computer-assisted instruction (CAI) K.3.2 [Computer and Information Science Education]: Computer science education1. IntroductionA recent study shows a sharp downturn in young peopleselecting a computing field for their careers [Pat05]. Thisis true for computer science, computer engineering, infor-mation technology, information systems, and software en-gineering. In computer science, the numbers of incomingfreshmen fell by 60 percent between 2000 and 2004. Thepercentage of all college freshmen planning a major in com-puter science dropped to 1.4 percent in 2004, down from itspeak of 3.4 percent in 1998 and below a trough of 1.6 per-cent in 1992–93 [Fos05]. To compound the problem, internaldrop rates of 35 to 50 percent are common. Computer graph-ics (CG) faces graver problems as the number of computerscience undergraduates enrolling in CG courses has tradi-tionally been low.This paper describes our experience in teaching a ju-nior/senior undergraduate level course in the field of gameprogramming. The objective of the course was to introducebasic concepts employed in the creation of modern computergames. Students had to create their own interactive applica-tion by integrating a variety of open source software, as wellas implementing the concepts taught in class. The coursewas designed in a way that did not enforce prior knowledgeof computer graphics, only a strong grasp of data structureswas assumed. With an eye on the rapidly growing game in-dustry, emphasis was placed not only on implementing orig-inal code, but also on looking “under the hood” of opensource libraries to acclimatize students in working with alarge codebase. We found that this approach was a novelway of getting our students motivated to learn more aboutvarious aspects of computer graphics in general, and gamedevelopment in particular.We state the contributions of our approach below:1. Our hands-on method of teaching is a novel approach thatovercomes some drawbacks of traditional teaching meth-ods.2. We show a strong correlation between our methodand observed enrollment figures for computer graphicscourses before and after our course was introduced.The paper begins by discussing the motivating factors thatled to the introduction of this course in the Computer Sci-ence and Engineering Department (CSE) at Arizona StateUniversity, Tempe (ASU). In section 2 we discuss currentand past work done in the area of teaching game develop-ment and using it as a tool for teaching computer graphics.We explain our approach in detail in section 3. We compareour approach with existing teaching strategies in this section,and conclude in section 4, discussing future directions and aportability plan for our course.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.