3D Game Programming 2011

  • Instructor :
    • Ming-Te Chi(紀 明德), Assistant Professor
    • Mailmtchi@cs.nccu.edu.tw
    • Office大仁 200213
    • Office hours: Tuesday Am10:00~12:00
    • Tel:  ext. 62773
  • Class time:  Tuesday D56  (PM: 1:10~4:00)
  • Classroom:  大仁200102
  • TA:
    • 黃嗣心  99753002@nccu.edu.tw
    • 大仁200304 圖學實驗室, ext:62329
  • Pre-requisites:
    • Computer programming skills in C or C++
Week Topic Slides Resource
01 09/13 Introductioin

Introduction to OpenGL Programming
Syllabus

slide00-intro
ppt / pdf

slide01
ppt / pdf
OpenGLoffical webpage

GLinfo2 win32

code example in textbook
02 09/20 Introduction to OpenGL Programming

2D Primitve


slide02
ppt / pdf
siggraph coursenote 2001
OpenGL Coursenote2008
GLUT tutor

codeblock (web)
lab1-slide pdf  example1
03 09/27 simple 2D GLUT game
slide03
ppt / pdf

lab2-slide pdf  example2
04 10/04 Geometric Primitives slide04
ppt / pdf

05 10/11 Transformations
slide05
ppt / pdf

lab3-1-slide pdf  example3
06 10/18 Projection slide06
ppt / pdf

07 10/25 Graphics Tools - modeling
slide11
ppt / pdf
blender

lab3-2-slide pdf  example3
lab4-slide pdf example4
08 11/01 Shading model(2)
slide07
ppt / pdf

09 11/08 Texture mapping
slide08
ppt / pdf

10 11/15 Midterm Exam   
2:10~4:00
closed book 
11 11/22 texture mapping

Programmable Pipeline

slide09
ppt / pdf
lab5-slide example5
12 11/29 Programmable Pipeline
lab6-slide example6
example6a

renderMonkey
Shader Toy
13 12/06 演講
遊戲產業的發展現況與未來趨勢
樂陞科技股份有限公司 張銘光 技術長
14:10 - 16:00


14 12/13
Interaction and Intersection

slide10
ppt / pdf
particle-example

2d physics engine-Box2d
3d physics engine - bullet3d
15 12/20 Music and sound - OpenAL slide12
ppt / pdf

16 12/27 VR & stereo display slide13
ppt / pdf

lab8-slide pdf example8
17 01/03 Introduction to game engine 
slide14
ppt / pdf
unity 3D
UDK

lab-sketchup+unity
18 01/10 Project demo
opengameart
Homework Deadline Requirement resource
1 10/10
23:59
Design a 2D game based on the GLUT 2D example.
Best work will have a chance to demostrate, and get bouns.
The presentation must include:
1. The goal and rules in the 2D game.
2. GLUT IO functions.
3. OpenGL 2D pixmap related functions.
GLUT API
mesa3d dll
2 11/7
23:59
Design a 3D scence based on the example on SphereWorld in Ch. 4 of 4th ed. .

1. at least one object with hierarchy transformation
2. Control the Camera and Object using keyboard and mouse.
3. animation
4. other geometry model
Luxo Jr.
3 12/13
23:59
Design a 3D scence based on the Hw2

1. At least 3 models with different materail setting.
2. 3 different light sources with control.
3. Control the Camera and Object using keyboard and mouse.
4. Loading 3d model.
bouns: good texture mapping

Final Project - 3D game
You can download the binary to play these games.
You may need install OpenAL or GLUT .

RunningCat
[slide] [binary]

Team1: 44, 51, 07


Best Graphics Award

皮卡丘打排球3D
[slide] [binary]

Team2: 14, 20, 33

Robert Run
[Slide] [Binary] 
Team3: 25, 32, 15

Fire!!!
[Slide] [Binary_v2] [source_v2]
Team4: 24, 55

Best Technique Award

3D Tetris
[slide] [binary]
Team5: 29, 46, 28

3D Fit
[slide][Binary]
Team6: 9714, 9726

Best Game
 Award   
BOOM!!!
[Slide] [Binary]
Team7: 03, 39, 49

VSnake
[slide][python code]
Team 8:  60
  • Grading:
    • Homework (40%)
      • Basic OpenGL project
      • 2D game project  
      • 3D hierarchy transformation
      • Shading
      • shader programming ...
    • Midterm Exam (20%)
    • Final Project - 3D game project (30%)
    • Class Participation (10%)
  • Text book:

o    OpenGL SuperBible: Comprehensive Tutorial and Reference, 4/e. by Richard S. Wright, Benjamin Lipchak, Nicholas Haemel    [example code]

     

·         Reference:

o    OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 3.0 and 3.1, 7/e, by OpenGL Architecture Review Board, Dave Shreiner, Mason Woo, Jackie Neider