VCLab

 

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

indicator

 

CS380: Introduction to Computer Graphics

Spring 2018

 

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 13:00AM—14:15AM, Rm. 114, N-1, KAIST
(Lab) Monday and Thursday 19:00–22:00, Rm. 317, N-1, KAIST
(TA Office Hour) Tuesday and Wednesday 18:30–20:00, Rm. 3422, E3-1, KAIST

Teaching Assistants

Sukjun Jeon (ex. 7864, )
Giljoo Nam (ex. 7864, )
Hyunho Ha (ex. 7864, )
Hyeonjoong Jang (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 2/27 Intro to Graphics Chapter 1 slide01 no lab spec0
  2 3/6, 3/8 Hello World 2D in OpenGL Chapter 1, Appendix A slide02v2 labslide01 spec1, code1 3/21
  3 3/13, 3/15 Transformation, Chapter 2, 3 slide03, slide04 labslide02
  4 3/20, 3/22 Respect, Frames Chapter 4, 5 slide05, slide06 no lab spec2, code2, bin2 4/4
  5 3/27, 3/29 Hello World 3D, Quaternions Chapter 6, 7 slide07, slide08v2 labslide03
  6 4/3, 4/5 Arcball & Trackball, Bezier Spline Chapter 8, 9 slide09, slide10 labslide04 spec3, code3, bin3 4/11
  7 4/10, 4/12 Camera Projection, Depth Chapter 10, 11 slide11v2, slide12v2 labslide05 spec4, code4, bin4 5/2
  8 4/17 1pm--4pm Midterm exam week
-
-
-
-
  9 4/24, 4/26 Rasterization, varying variables Chapter 12,13 slide13v2, slide14
-
spec5, code5, bin5 5/9
  10 5/1, 5/3 Material, texture mapping Chapter 14, 15 slide15, slide16 labslide06
  11 5/8, 5/10 Sampling, reconstruction, resampling Chapter 16, 17, 18 slide17, slide18v2 spec6, code6, avi6 5/23
  12 5/15, 5/17 Color Chapter 19 slide19, slide20 labslide07
  13 5/24 Modeling Chapter 22 slide21 labslide08 spec7, bin7 5/30
  14 5/29, 5/31 Ray tracing, light transport Chapter 20, 21 slide22, slide23v2 labslide09 spec8, code8, bin8 6/6
  15 6/7 Light transport, animation Chapter 21, 23 slide 24v2 no lab
  16 6/12, 1pm--4pm Final exam week
-
-
-
 
               

Grading

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

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