CSC 562: Graduate Introduction to Game Engine Design In Workflow 1. 14CSC GR Director of Curriculum (rouskas@ncsu.edu) 2. COE CC Coordinator GR (rfillin@ncsu.edu) 3. COE CC Chair GR (reeves@ncsu.edu; rfillin@ncsu.edu; mdevets@ncsu.edu) 4. COE Final Review GR (rfillin@ncsu.edu) 5. COE Dean GR (reeves@csc.ncsu.edu) 6. ABGS Coordinator (george_hodge@ncsu.edu; lian_lynch@ncsu.edu; mlnosbis@ncsu.edu) 7. rfillin (rfillin@ncsu.edu) 8. ABGS Meeting (george_hodge@ncsu.edu; lian_lynch@ncsu.edu; mlnosbis@ncsu.edu) 9. ABGS Chair (george_hodge@ncsu.edu; lian_lynch@ncsu.edu; mlnosbis@ncsu.edu) 10. Grad Final Review (george_hodge@ncsu.edu; lian_lynch@ncsu.edu; mlnosbis@ncsu.edu) 11. PeopleSoft (ldmihalo@ncsu.edu; blpearso@ncsu.edu; Charles_Clift@ncsu.edu; jmharr19@ncsu.edu; Tracey_Ennis@ncsu.edu) Approval Path 1. Tue, 04 Aug 2015 14:33:48 GMT Georgios Rouskas (rouskas): Approved for 14CSC GR Director of Curriculum 2. Mon, 24 Aug 2015 19:57:29 GMT Robyn Fillinger (rfillin): Approved for COE CC Coordinator GR 3. Tue, 22 Sep 2015 15:40:35 GMT Robyn Fillinger (rfillin): Approved for COE CC Chair GR 4. Tue, 22 Sep 2015 15:46:39 GMT Robyn Fillinger (rfillin): Approved for COE Final Review GR 5. Tue, 22 Sep 2015 17:37:55 GMT Douglas Reeves (reeves): Approved for COE Dean GR 6. Thu, 24 Sep 2015 15:21:35 GMT George Hodge (ghodge): Approved for ABGS Coordinator 7. Mon, 09 v 2015 14:39:22 GMT Robyn Fillinger (rfillin): Approved for rfillin 8. Mon, 07 Dec 2015 19:16:50 GMT Melissa sbisch (mlnosbis): Approved for ABGS Meeting New Course Proposal Date Submitted: Tue, 04 Aug 2015 03:27:29 GMT Viewing: CSC 562 : Graduate Introduction to Game Engine Design Changes proposed by: healey Course Prefix CSC (Computer Science) Course Number 562 Dual-Level Course Cross-listed Course
Title Graduate Introduction to Game Engine Design Abbreviated Title Game Engine Design College College of Engineering Academic Org Code Computer Science (14CSC) CIP Discipline Specialty Number 11.0701 CIP Discipline Specialty Title Computer Science. Term Offering Spring Only Year Offering Offered Every Year Effective Date Spring 2016 Previously taught as Special Topics? Yes Number of Offerings within the past 5 years 4 Course Prefix/Number Semester/Term Offered Enrollment CSC 591 Spring 2015 21 CSC 591 Spring 2014 16 CSC 591 Spring 2013 18 CSC 591 Spring 2012 26 Course Delivery Face-to-Face (On Campus) Grading Method Graded/Audit Credit Hours 3 Course Length 16
weeks Contact Hours (Per Week) Component Type Lecture 3 Course Is Repeatable for Credit Instructor Name Christopher G. Healey Instructor Title Professor Grad Faculty Status Full Anticipated On-Campus Enrollment Contact Hours Open when course_delivery = campus OR course_delivery = blended OR course_delivery = flip Enrollment Component Per Semester Per Section Multiple Sections? Comments Lecture 25 25 ne Course Prerequisites, Corequisites, and Restrictive Statement CSC 561 or CSC 461 or equivalent course from a previous university Is the course required or an elective for a Curriculum? Catalog Description This course offers an advanced discussion of topics in computer graphics, with an emphasis on rendering techniques and GPU shader programming used in computer game engine design. Students are required to implement a medium-size game program that includes modeling and rendering, 2D physics, and animation of dynamic objects. Students will learn about GPU basics, mathematics of transformations, visual appearance properties, texturing, global illumination, and toon shading in computer games. Justification for new course: Given the recent interest in computer games and computer game careers, as well as the new concentration in computer games in the Computer Science Department, we felt it would be useful to provide a course that focused on the fundamental computer graphics that underlies all computer games. Demand for this type of course was repeatedly expressed by both our undergraduate and our graduate students, and enrollment numbers support what seems to be a sustained interest in this topic. Does this course have a fee? Consultation
College(s) Contact Name Statement Summary College of Design Denise Gonzales Crisp Denise Gonzales Crisp @ NCSU <dmcrisp@ncsu.edu> Oct 12 Instructional Resources Statement to Christopher, denise_crisp, me, George Hello Professor Healey: I have reviewed the course, Graduate Introduction to Game Engine Design. Owing to it s focus on technical tools and code-based processes, I see no conflict with anything offered within the Graphic Design graduate program. This course will be taught as a regular, on-campus lecture as part of the current course load of the computer graphics faculty in the Computer Science Department (Dr. Christopher G. Healey and Dr. Benjamin Watson). When the course was taught as a 591 special topics course. Dr. Healey and Dr. Watson alternated teaching the course each year. new resources are required for this course. Course Objectives/Goals 1. 2. Extend students' understanding of computer graphics beyond the fundamental level. 3. 4. Introduce students to the basics of GPU programming. 5. 6. Provide knowledge of techniques being used to advanced our understanding of various real-world topics in field of computer graphics rendering. 7. 8. Allow students to gain confidence in their ability to design and implement a medium-sized computer graphics term project that investigate advances computer graphics topics. 9. 10. Implement a set of assignments and a final project that combine to form the term project, a 2D computer game. 11. 12. Allow students to choose a method to extend the term project (e.g., network multiplayer, computer-based opponents, or advanced surface types), and research it in sufficient depth to to implement their extension. 13. Student Learning Outcomes - interpret computer graphics techniques and algorithms beyond the fundamental level, - design programs using OpenGL and C/C++ that combine to form a simulation of a 2D minigolf game, - apply programming techniques learned during the semester to implement the programs, - identify and be capable of explaining various advanced computer graphics topics, - design a moderate extension to your minigolf game program, and - apply programming techniques learned through the semester to implement the extension using OpenGl and C/++. Student Evaluation Methods Evaluation Method Weighting/Points for Each Details Other 40% Four (4) individual assignments, space evenly throughout the first 14 weeks of the semester, that dovetail together to produce the basic term project, a minigolf game
Project 20% An extension to the basic minigolf game, allowing students to investigate more advanced topics in graphics. Suggested extensions are provided (network multiplayer, computer-based opponents, advanced tile types, or course packing with terrain generation). Students are also allowed to choose their own extension, with approval required from the instructor and a set of "deliverable" agreed upon to determine how the extension will be marked. Final Exam 40% Standard final exam of topics discussed in class. Topical Outline/Course Schedule Topic Time Devoted to Each Topic Activity Graphics pipeline 1 week Introduction to the standard OpenGL-based graphics pipeline. GPU graphics pipeline 1 week Discussion of how hardware-based GPUs implement their version of the graphics pipeline, with comparison to the OpenGL software graphics pipeline. GLSL 2 weeks Introduction to the GLSL programming language used to program shaders within a GPU. Transformations 2 weeks Theory of how transformations (translate, rotate, scale, skew, projection) are implemented as mathematical matrix operations within the graphics pipeline. Discussion of different types of higher-level transformations, including affine, rigid body, and quaternions for rotation. Visual Appearance 2 weeks Discussion of more advanced visual appearance rendering techniques, including lighting and shading, antialiasing, transparency and compositing, and gamma correction. Texturing 2 weeks Basics of texture mapping, including the texture pipeline in the GPU, image texturing, bump and normal mapping, and parallax mapping Advanced Visual Appearance 2 weeks Advanced visual appearance theory, including radiometry, photometry, colorimetry, light source types, and BRDFs (bidirectional reflectance distribution functions) Global Illumination 2 weeks Introduction to shadows, ambient occlusion, reflections, transmission and refraction, caustics, and subsurface scattering. nphotorealistic Rendering 2 weeks Introduction to nonphotorealistic rendering techniques, including toon shading, painterly rendering, and pen and ink sketching. Syllabus CSC 562.pdf Additional Documentation csc-591-assn1.pdf csc-591-assn2.pdf csc-591-assn3.pdf csc-591-assn4.pdf csc-591-project.pdf Additional Comments mlnosbis 9/22/2015: Does not appear to conflict with any other courses.
ghodge 9/24/2015 Do not think any additional consultation is required. Ready for ABGS reviewers. ABGS reviewer comments: -Should there be a consultation with the College of Design? Are any Graphic Design courses similar or have potential overlap? -The changes are pretty straight forward. ghodge 0/02/2015 ask for College of Design consultation. ghodge 12/07/2015 ready for ABGS Course Reviewer Comments rfillin (Tue, 22 Sep 2015 15:46:28 GMT): Approved by the GSC rfillin (Mon, 09 v 2015 14:39:11 GMT): consult added Key: 7523