Preview Workflow

Viewing: CSC 562 : Introduction to Game Engine Design

Last approved: Mon, 22 Feb 2016 15:51:23 GMT

Last edit: Mon, 22 Feb 2016 15:50:58 GMT

Catalog Pages referencing this course
Change Type
CSC (Computer Science)
Dual-Level Course
Cross-listed Course
Introduction to Game Engine Design
Game Engine Design
College of Engineering
Computer Science (14CSC)
Term Offering
Spring Only
Offered Every Year
Spring 2016
Previously taught as Special Topics?
Course Prefix/NumberSemester/Term OfferedEnrollment
CSC 591Spring 201521
CSC 591Spring 201416
CSC 591Spring 201318
CSC 591Spring 201226
Course Delivery
Face-to-Face (On Campus)

Grading Method
Contact Hours
(Per Week)
Component TypeContact Hours
Course Attribute(s)

If your course includes any of the following competencies, check all that apply.
University Competencies

Course Is Repeatable for Credit
Christopher G. Healey

Open when course_delivery = campus OR course_delivery = blended OR course_delivery = flip
Enrollment ComponentPer SemesterPer SectionMultiple Sections?Comments
Open when course_delivery = distance OR course_delivery = online OR course_delivery = remote
Prerequisites: CSC 561 or CSC 461 or equivalent course from a previous university

Is the course required or an elective for a Curriculum?
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.

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.


Is this a GEP Course?
GEP Categories

Humanities Open when gep_category = HUM
Each course in the Humanities category of the General Education Program will provide instruction and guidance that help students to:






Mathematical Sciences Open when gep_category = MATH
Each course in the Mathematial Sciences category of the General Education Program will provide instruction and guidance that help students to:




Natural Sciences Open when gep_category = NATSCI
Each course in the Natural Sciences category of the General Education Program will provide instruction and guidance that help students to:




Social Sciences Open when gep_category = SOCSCI
Each course in the Social Sciences category of the General Education Program will provide instruction and guidance that help students to:






Interdisciplinary Perspectives Open when gep_category = INTERDISC
Each course in the Interdisciplinary Perspectives category of the General Education Program will provide instruction and guidance that help students to:








Visual & Performing Arts Open when gep_category = VPA
Each course in the Visual and Performing Arts category of the General Education Program will provide instruction and guidance that help students to:






Health and Exercise Studies Open when gep_category = HES
Each course in the Health and Exercise Studies category of the General Education Program will provide instruction and guidance that help students to:








Global Knowledge Open when gep_category = GLOBAL
Each course in the Global Knowledge category of the General Education Program will provide instruction and guidance that help students to achieve objective #1 plus at least one of objectives 2, 3, and 4:


Please complete at least 1 of the following student objectives.






US Diversity Open when gep_category = USDIV
Each course in the US Diversity category of the General Education Program will provide instruction and guidance that help students to achieve at least 2 of the following objectives:
Please complete at least 2 of the following student objectives.








Requisites and Scheduling
a. If seats are restricted, describe the restrictions being applied.

b. Is this restriction listed in the course catalog description for the course?

List all course pre-requisites, co-requisites, and restrictive statements (ex: Jr standing; Chemistry majors only). If none, state none.

List any discipline specific background or skills that a student is expected to have prior to taking this course. If none, state none. (ex: ability to analyze historical text; prepare a lesson plan)

Additional Information
Complete the following 3 questions or attach a syllabus that includes this information. If a 400-level or dual level course, a syllabus is required.
Title and author of any required text or publications.

Major topics to be covered and required readings including laboratory and studio topics.

List any required field trips, out of class activities, and/or guest speakers.

College(s)Contact NameStatement Summary
College of DesignDenise Gonzales CrispDenise Gonzales Crisp @ NCSU <>
Oct 12

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. No new resources are required for this course.

  1. Extend students' understanding of computer graphics beyond the fundamental level.

  2. Introduce students to the basics of GPU programming.

  3. Provide knowledge of techniques being used to advanced our understanding of various real-world topics in field of computer graphics rendering.

  4. 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.

  5. Implement a set of assignments and a final project that combine to form the term project, a 2D computer game.

  6. 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.

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/++.

Evaluation MethodWeighting/Points for EachDetails
Other40%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
Project20%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 Exam40%Standard final exam of topics discussed in class.
TopicTime Devoted to Each TopicActivity
Graphics pipeline1 weekIntroduction to the standard OpenGL-based graphics pipeline.
GPU graphics pipeline1 weekDiscussion of how hardware-based GPUs implement their version of the graphics pipeline, with comparison to the OpenGL software graphics pipeline.
GLSL2 weeksIntroduction to the GLSL programming language used to program shaders within a GPU.
Transformations2 weeksTheory 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 Appearance2 weeksDiscussion of more advanced visual appearance rendering techniques, including lighting and shading, antialiasing, transparency and compositing, and gamma correction.
Texturing2 weeksBasics of texture mapping, including the texture pipeline in the GPU, image texturing, bump and normal mapping, and parallax mapping
Advanced Visual Appearance2 weeksAdvanced visual appearance theory, including radiometry, photometry, colorimetry, light source types, and BRDFs (bidirectional reflectance distribution functions)
Global Illumination2 weeksIntroduction to shadows, ambient occlusion, reflections, transmission and refraction, caustics, and subsurface scattering.
Nonphotorealistic Rendering2 weeksIntroduction to nonphotorealistic rendering techniques, including toon shading, painterly rendering, and pen and ink sketching.
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
rfillin (Tue, 22 Sep 2015 15:46:28 GMT): Approved by the GSC
rfillin (Mon, 09 Nov 2015 14:39:11 GMT): consult added
Key: 7523