VCLab

 

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

indicator

 

CS380: Introduction to Computer Graphics

Spring 2021

 

Instructor

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

Course Description

 

This course provides an introduction to 3D computer graphics. The goal of this course is to learn how to form images by computer. We will study the basic methods used to define shapes, materials and lighting when creating computer-generated images for use in film, games and other applications. Covered topics include affine and projective transformations, clipping and windowing, visual perception, scene modeling and animation, algorithms for visible surface determination, reflection models, illumination algorithms, and color theory in depth.

Time and Place

(Lecture) Tuesday and Thursday 14:30—15:45, Zoom
(Lab) Monday, Tuesday 19:00 - 22:00, Zoom
(TA Office Hour) Wednesday 16:00 - 18:00, Rm. 2418, E3-1, KAIST or Zoom

Teaching Assistants

Hakyeong Kim (ex. 7864, )
Shinyoung Yi (ex. 7864, )
Donggun Kim (ex. 7864, )

Textbook & Materials

Steven J. Gortler (2012) Foundations of 3D Computer Graphics, MIT Press (available from the KAIST library)

Prerequisites

There are no official course prerequisites. However, we assume that you already have programming experience in C/C++ and a basic knowledge of linear algebra. An exposure to calculus and image processing is beneficial.

Tentative Schedule

 
  Week Date Lecture Reading Lecture Lab Homework Due
  1 3/2 Intro to Graphics Chapter 1 slide01 no lab
  2 3/4 Intro to OpenGL Chapter 1 slide02   spec0  
  3 3/9 Hello World 2D in OpenGL Appendix A slide02 labslide01, macguide spec1, code1 3/21 23:55
  4 3/11 Transformation Chapter 2 slide03  
  5 3/16 Transformation Chapter 3 slide04 labslide02
  6 3/18 Respect Chapter 4 slide05    
  7 3/23 Frames Chapter 5 slide06 no lab    
  8 3/25 Hello World 3D Chapter 6 slide07   spec2, code2, bin2 4/4, 23:55
  9 3/30 Quaternions Chapter 7 slide08v2 labslide03
  10 4/1 Arcball & Trackbal Chapter 8 slide09v2      
  11 4/6 Bezier Spline Chapter 9 slide10 labslide04 spec3, code3, bin3 4/18, 23:55
  12 4/8 Camera Projection Chapter 10 slide11      
  13 4/12 Depth Chapter 11 slide12 labslide05 spec4, code4, bin4 5/2, 23:55
  14 4/16 Rasterization Chapter 12 slide13      
  15 4/22 13:00~15:45 Midterm exam week
-
     
  16 4/27 Varying variables Chapter 13 slide14 labslide06 spec5, code5, bin5 5/9, 23:55
  17 4/29 Material Chapter 14 slide15      
  18 5/4 Texture mapping Chapter 15 slide16  
  19 5/6 Sampling Chapter 16 slide17 labslide07 spec6, code6, bin6 5/23, 23:55
  20 5/11 Reconstruction and resampling Chapter 17, 18 slide18    
  21 5/13 Color (1) Chapter 19 slide19    
  22 5/18 Color (2) Chapter 19 slide20 labslide08 spec7, bin7 5/30, 23:55
  23 5/20 No lecture      
  24 5/24 Geometry modeling Chapter 22 slide21 labslide09 spec8, bin8 6/6, 23:55
  25 5/29 Ray tracing (1) Chapter 20 slide22      
  26 6/1 Light transport (1) Chapter 21 slide22      
  27 6/3 Light transport (2) Chapter 21 slide23      
  28 6/8 Animation Chapter 23 slide24      
  29 6/10 No lecture      
  30 6/17, 13:00--15:30 Final exam week
-
       
             
               
               

Grading

Class participation: 10%
Midterm/final exam: 50% (25% each)
Programming assignments: 40%

Resources

Textbook website
Textbook (errata of 1st ed.)
LightHouse3D.com
MIT Press
freeGLUT
OpenGL GLEW
OpenGL Shade Language
GLFW (similar to GLUT)
GTK+
Wolfram MathWorld
Understanding quaternions

http://www.3dgraphicsfoundations.com/
http://www.3dgraphicsfoundations.com/errata.html
http://www.lighthouse3d.com/
http://mitpress.mit.edu/books/foundations-3d-computer-graphics-0
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/
https://www.3dgep.com/understanding-quaternions/

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

KAIST