VCLab

 

RESEARCH AREAS   PEOPLE   PUBLICATIONS   COURSES   ABOUT US
Home / Courses / CS482

indicator

 

CS482: Interactive Computer Graphics

Fall 2022

Instructor

Prof. Min Hyuk Kim, [Room] 2403, E3-1, [email]

Course Description

 

This course is a team project-based course that gives you an opportunity to build your own interactive appliation as a mobile video game on a mobile platform, Android OS. The goal of this course is to learn how to create your own interactive graphics application from designing to building via collaborative programming. We will study the foundations of computer graphics used to define shapes, materials and lighting and practice for use in mobile graphics enviroments. This course starts with essential foundations and introduction to advanced topics for interactive computer graphics. And main team-project activities will follow, including team presentation, progress reports and the final presentations.

Time and Place

(Lecture) Tuesday and Thursday 16:00—17:30, Rm. 2443, E3-1
(Lab) Thursday 19:00–20:30, Rm. 317, N-1, KAIST
(TA Office Hour)
Wednesday 18:30–20:00, Rm. 2401, E3-1, KAIST,
Thursday 20:30-22:00, Rm. 317, N-1, KAIST

Teaching Assistants

Hakyeong Kim (Head TA, ex. 7864, ) for teams 1, 2, and 3
Inchul Kim (ex. 7864, ) for teams 4 and 5
Kiseok Choi (ex. 7864, ) for teams 6 and 7

Textbook & Materials

Steven J. Gortler (2012) Foundations of 3D Computer Graphics, MIT Press
Philip Dutré, Kavita Bala, Philippe Bekaert (2006) Advanced Global Illumination, 2nd ed., A K Peters Ltd.

Prerequisites

Fundamental computer graphics courses such as CS380. Specifically, we assume OpenGL (or ES) programming experience in C (or C++) and a mobile programming experience. Note that no 3D graphics engine libraries such as Unreal engine, Unity, CryEngine, OGRE3D, etc, are allowed.

Tentative Schedule

 
  Index Date Lecture Project evaluation Lecture Lab
  1 08/30 Introduction to computer graphics and design Grouping teams slide01  
  2 09/01 Intro to OpenGL SL Refining groups slide02  
  3 09/06 Intro to OpenGL SL Design development slide02  
  4 09/08 Linear/affine transformation Design development slide03, slide04 labslide01
  5 09/13 Respect Design candates review (Teams 2, 6, 1) slide05  
  6 09/15 Frames Design candates review (Teams 4, 7) slide05 labslide02
  7 09/20 Hello3D Design candates review (Teams 5, 3) slide06  
  8 09/22 Quaternions Progress presentation 1 (Teams 2, 6, 1) slide07 labslide03
  9 09/27 Arcball Progress presentation 1 (Teams 4) slide08v2  
  10 09/29 Camera projection Progress presentation 1 (Teams 5, 3) slide09v2 labslide04
  11 10/04 No lecture for all Tuesday classes at KAIST      
  12 10/06 Depth Progress presentation 2 (Teams 2, 1) slide10 labslide05
  13 10/11 Smooth interpolation Progress presentation 2 (Teams 4) slide11  
  14 10/13 Rasterization Progress presentation 2 (Teams 5, 3) slide12  
    10/18 Midterm exam      
  15 10/25 Varying variable Progress presentation 3 (Teams 2, 1) slide13  
  16 10/27 Material Progress presentation 3 (Teams 4) slide14 labslide06
  17 11/01 Texture mapping, shadow mapping Progress presentation 3 (Teams 5, 3) slide15  
  18 11/03 Ray tracing   slide16 labslide07
  19 11/08 Rendering equation Progress presentation 4 (Teams 2, 1) slide17  
  20 11/10 Reflectance model Progress presentation 4 (Teams 4) slide18  
  21 11/15 Monte Carlo integration for path tracing (1) Progress presentation 4 (Teams 5, 3) slide19  
  22 11/17 Monte Carlo integration for path tracing (2)   slide20  
  23 11/22 Monte Carlo integration for path tracing (3) (Team project) final presentation (Teams 1) slide21  
  24 11/24 Monte Carlo integration for path tracing (4) (Team project) final presentation (Teams 2, 4) slide22  
  25 11/29 Monte Carlo integration for path tracing (5) (Team project) final presentation (Teams 5, 3) slide22  
    12/01 No lecture (KAIST entrance exam)      
    12/06 No lecture (SIGGRAPH Asia 22)      
    12/13 Final exam      

Grading

Class participation: 10%
Midterm exam: 20%
Final exam: 20%
Team project: 50%

Resources

Reference book website
Android Studio
Java JDK 8
LightHouse3D.com
freeGLUT
OpenGL GLEW
OpenGL Shade Language
GLFW (similar to GLUT)
GTK+
Wolfram MathWorld
Theoretical CS Cheat Sheet

http://www.3dgraphicsfoundations.com/
http://developer.android.com/studio/
http://www.oracle.com/technetwork/java/javase/downloads/
http://www.lighthouse3d.com/
http://www.transmissionzero.co.uk/software/freeglut-devel/
http://glew.sourceforge.net/

http://www.opengl.org/documentation/glsl/
http://www.glfw.org/
http://www.gtk.org/
http://mathworld.wolfram.com/
Theoretical Computer Science Cheat Sheet

Hosted by Visual Computing Laboratory, School of Computing, KAIST.

KAIST