Lab for Introduction to Computer Graphics
2018 Fall
Instructors Hong-Wen Huang
Office Hour

Fri, 15:30~17:30

TA Xian-Guang Zhong
Yan-Lin Chen
Lectures
Week Content Notes Assignment

01

Introduction

[Introduction] 

02

Programming in C++ and Visual Studio

[VS&C++]  [2D Game Engine] 

Reversi.exe

Reversi_skeleton.rar

ReversiConsole-Grading-Sheet.docx

Reversi2D-Grading-Sheet.docx

03

Programming with QT and Image Processing

[Programming With Qt]  [Image Processing - 1] 

Project1 framework.rar

Solution.rar

Project1-Grading-Sheet.doc

Project1 webpage

04

Image Processing

[Image Processing-2] 

NPR.rar

05

Coordinate systems and transformations

  • Project 2 - Architecture
  • OpenGL
    • GL_POINTS
    • GL_LINES
    • GL_LINE_STRIP
    • GL_LINE_LOOP
    • GL_TRIANGLES
    • GL_TRIANGLE_STRIP
    • GL_TRIANGLE_FAN
    • GL_QUADS
    • GL_QUAD_STRIP
    • GL_POLYGON
[Coordinate systems and transformations-1] 

Sample Solution.rar

OpenGLTest.rar

OpenGLPrimitives.rar

OpenGLTest3D.rar

06

Coordinate systems and transformations

  • Cartesian coordinate space
  • Vector
  • Matrix
  • Graphics Pipeline
  • Viewing & Transformations
  • Cross_Param
  • Build Project and Project Score
  • Recursive
  • Clipping
  • Frustum
[Coordinate systems and transformations-3]  [Coordinate systems and transformations-2] 

Project2-Grading-Sheet.doc

MazeFramework.rar

07

  • Project3 Grading Standard
  • framework overview
  • draw track
  • draw train
  • run train
  • train view
[Project3]  [RollerCoaster1] 

TrainExample.exe

Project3-Grading-Sheet.doc

Project3Framework.rar

08

load .obj model

load .3ds model

[RollerCoaster2] 

Load3DSModel.rar

LoadObjModel.rar

arrow.obj

statue.3ds

09

Particle

Music

Sound

[RollerCoaster3] 

10

The OpenGL Pipeline

Vertex and Fragment Shaders

[GPU-Shader1] 

11

打光

水面

波浪

sin 波

Height maps

Wave equation

Water Surface Rendering

[GPU-Shader2] 

12

Cubemap

ToonShader

[GPU-Shader3] 
PreRequisites

C/C++, Linear Algebra

Main Textbook

None

Grading

Attendance: 70 %

Homework: 30%

Homework

Reversi

Syllabus
  • Programming in C++ and Visual Studio
    • Visual Studio
    • Writing skill
    • Reversi
     
  • Programming
    • CMake
    • lib & dll
     
  • Image processing
    • QT
     
  • Coordinate systems and transformations
    • vector class
     
  • 2D programming in OpenGL with QT
    • Maze
     
  • 3D programming in OpenGL with QT
     
  • GPU programming with CUDA