Introduction to Computer Graphics

I am teaching Introduction to Computer Graphics and Game Development (SER332) this Spring. I have taught this course for a year – Spring 2018 and Spring 2017.

SER332 is a beginner level course for students interested in learning foundations of graphics and basic principles of the game development pipeline. We do programming in C/C++ and use the OpenGL graphics library.


version Spring 2018


The course includes 25 lectures and covers the following topics: course presentation; concepts of computer graphics; OpenGL overview; callback functions; vertex ; transformations (ModelView); transformations (Viewport); display lists and menus; transformations (Projection); linear algebra; fonts and OBJ files; mesh data structure; lighting; materials; and textures.

My slides for each lecture are available below:


There are four programming assignments. the last one is a comprehensive project where students create a 3D closed space that has rooms and hallways. It is a scenario for a first-person shooter game. Each room has furniture, light adjustments, materials, and textures.

GitHub Repository

Code for lecture examples is available here: javiergs/SER332