Lab for Introduction to Computer Graphics
2014 Spring
Instructors Yu-Chi Lai
Office Hour

Fri, 12:30~14:30

TA Nai-Sheng Hsu
Hao-Yu Chang
Guo-Wei Li
Lectures
Week Content Notes Assignment

1

Introduction

[Note] 

2

Programming in C++ and Visual Studio

[Note]  [2DGameEngine] 

Reversi_skeleton.rar
Reversi.exe

3

Programming with QT and OGRE

[Note] 

Project1:Image Processing

Project1_Solution.rar

 

4

Image Processing

[Note] 

Homework2: 2D_Reversi

Reversi_sample.rar

5

Image Processing

[Note] 

6

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
[Note] 

Project  2

7

Coordinate systems and transformations

  • Cartesian coordinate space
  • Vector
  • Matrix
  • Graphics Pipeline
  • Viewing & Transformations
  • Cross_Param
[Note] 

fltk-1.3.0.rar

Vector3.h

Project 2 Skeleton: Maze.7z

基礎迷宮.7z

8

Coordinate systems and transformations

  • Recursive
  • Clipping
  • Frustum
[Note] 

Project 2   Sample.7z

9

Ogre Basic (1/3)

  • App Wizard
  • Enity
  • Mesh
  • Scene Node
[Note] 

10

Ogre Basic (2/3)

  • P3 Skeleton
  • ManualObject
  • Material
  • Curve
[Note] 

Roller Coaster.rar

resource.rar

11

Ogre Basic (3/3)

  • Ray Query
  • Load Models
  • Animation
[Note] 

12

  • Project3 Grading Standard
  • Something Special
  • ManualObject Review
[Note] 

cube.txt

13

Ogre GPU (1/2)

14

CUDA

[Note] 

15

Shader

[Note] 

16

shader 2

[Note] 

17

Ogre Advance (2/3)

  • Ocean
  • Particle System
  • Ogre Example

Ogre Advance (3/3)

  • RayTracing
  • Compositor
PreRequisites

C/C++, Linear Algebra

Main Textbook

None

Grading

Attendance: 70 %

Homework: 30%

Homework

Reverse

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