3D Game Technology
2017 All
Office Hour

Monday 9:00~11:00 AM

TA Ying-Sheng Luo
Lectures 1
Week Content Notes Assignment


  • Introduce yourself
  • Administrative information
  • Course overview



  • Work for modeling
  • Designing interactive software


  • Sensors in market
  • Wii Remote & Fit
  • PS move
  • XBOX 360 Kinect
  • HTC Vive Head Set and Handle
  • Oculus Head Set and Handle


  • Graphics Pipeline
  • Shader
  • Texture


Example Scenes.zip



  • Multiple pass
    • Reflection
    • Transmission
    • Caustics
    • Instant Radiosity
  • Shadow
    • Dirty shadow
    • Shadow map
    • Shadow volume
    • Ambient occlusion




Lectures 2
Week Content Notes Assignment


Programming with FLTK and OGRE

  • case 1: libtga + FLTK
  • case 2: Ogre + Flash


Introduction to Ogre3D



Ogre Basic

  • Resource Group
  • Material
  • Manual Object
  • Dynamic Texture


Ogre GUI

  • Types of user interface
  • Window events
  • Adobe Flash
  • Flash UI introduction
  • Design a button with Flash
  • Using Hikari
  • Create Flash and OGRE


Ogre GPU (1/2)



Ogre GPU (2/2)



Ogre Samples


Technically, Computer Graphics and good C++ programming skills. 




  • Mobile game survey
蔡中旗 Clash of Clans
巫培源 梅露可物語
黃弘文 Game Of Dice
劉益銓 Flow free
陳彥霖 Swordigo
黃偉翔 Flappy bird
呂仁傑 Puzzle & Dragon
邱嘉興 Orbital
鍾賢廣 OPUS-靈魂之橋
張哲寬 Loner
  • PC online game survey
張哲寬 AVA戰地之王
陳彥霖 魔獸爭霸-信長之野望
邱嘉興 英雄聯盟
林德潔 Minecraft
呂仁傑 楓之谷
鍾賢廣 戰地風雲1
蔡中旗 For honor
黃偉翔 Overwatch
巫培源 world of warcraft
劉益銓 300英雄
黃弘文 war of warships
  • VR / AR / MR application survey
蔡中旗 跑車浪漫旅
邱嘉興 Job Simulator
林德潔 VR Funhouse
劉益銓 Rec Room
張哲寬 Driveclub VR
陳彥霖 Battlezone
鍾賢廣 Tekken 7
黃偉翔 The Last Guardian
巫培源 O!My Genesis
黃弘文 RIGS: Mechanized Combat League
  • Paper survey 1 - Shadow and Interactive lighting
張哲寬 Instant radiosity
蔡中旗 Incremental Instant Radiosity for Real-Time Indirect Illumination
邱嘉興 Lightcuts: A scalable approach to illumination
呂仁傑 Bidirectional lightcuts
陳彥霖 Pixel-Correct Shadow Maps with Temporal Reprojection and Shadow Test Confidence
黃偉翔 Fast and Detailed Approximate Global Illumination by Irradiance Decomposition
鍾賢廣 Real-Time Ambient Occlusion for Dynamic Character Skins
林德潔 Ambient Occlusion Volumes
黃弘文 Line-Sweep Ambient Obscurance
劉益銓 An approximate image-space approach for interactive refraction
巫培源 Interactive image-space techniques for approximating caustics
First Semester
  • 3 Projects (20, 20, 20 each): 60%
  • 3 Game Review: 30%
  • One paper review: 10%

Second Semester

  • 3 Projects (10, 10, 10 each): 30%
  • One games: 40%
  • Paper review: 30 %
  • Set 1: Shadow and Interactive lighting
    • Instant radiosity and light
      • *Keller, A. "Instant radiosity." In SIGGRAPH ’97: Proceedings of the 24th annual conference on Computer graphics and interactive techniques 
      • *Samuli Laine, Hannu Saransaari, Janne Kontkanen, Jaakko Lehtinen, Timo Aila, "Incremental Instant Radiosity for Real-Time Indirect Illumination", Proceeding EGSR'07 Proceedings of the 18th Eurographics conference on Rendering Techniques, Pages 277-286 
      • *WALTER, B., FERNANDEZ, S., ARBREE, A., BALA, K., DONIKIAN, M., AND GREENBERG, D. P. 2005. Lightcuts: A scalable approach to illumination. In Proceedings of SIGGRAPH 2005, Computer Graphics Proceedings, Annual Conference Series.
      • HASAN, M., PELLACINI, F., AND BALA, K. 2007. Matrix rowcolumn sampling for the many-light problem. In ACM Transactions on Graphics (TOG), vol. 26, ACM, 26.
      • Rui Wang , Rui Wang , Kun Zhou , Minghao Pan , Hujun Bao, An efficient GPU-based approach for interactive global illumination, ACM Transactions on Graphics (TOG), v.28 n.3, August 2009
      • Bruce Walter , Adam Arbree , Kavita Bala , Donald P. Greenberg, Multidimensional lightcuts, ACM Transactions on Graphics (TOG), v.25 n.3, July 2006
      • Bruce Walter , Pramook Khungurn , Kavita Bala, Bidirectional lightcuts, ACM Transactions on Graphics (TOG), v.31 n.4, p.1-11, July 2012
      • Wen-Chieh Lin, Tsung-ShianHuang, Tan-Chi Ho, Yueh-Tse Chen, Jung-Hong Chuang, “Interactive Lighting Design with Hierarchical Light Representation”, Proceeding EGSR '13 Proceedings of the Eurographics Symposium on Rendering, Pages 133-142 
      • Michael Schwarz , Peter Wonka, Procedural Design of Exterior Lighting for Buildings with Complex Constraints, ACM Transactions on Graphics (TOG), v.33 n.5, p.1-16, August 2014  
      • Peter Hedman, Tero Karras, and Jaakko Lehtinen, "Sequential Monte Carlo instant radiosity", I3D '16 Proceedings of the 20th ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games, Pages 121-128 
    • Ambient Occlusion
      • *Okan Arikan, David Forsyth, James F. O'Brien, "Fast and Detailed Approximate Global Illumination by Irradiance Decomposition", Proceeding SIGGRAPH '05 ACM SIGGRAPH 2005 Papers, Pages 1108-1114
      • Kirk, Adam G.andArikan, Okan (2007): Real-time ambient occlusion for dynamic character skins. In: Gooch,Bruceand Sloan, Peter-Pike J. (eds.)Proceedings of the 2007 Symposium on Interactive 3D Graphics, SI3D 2007, April 30 - May 2, 2007, Seattle, Washington, USA 2007. pp. 47-52. 
      • *Morgan McGuire, "Ambient Occlusion Volumes" (NVIDIA),High PerformanceGraphics 2010, June 2010 
      • *Ville Timonen, "Line-Sweep Ambient Obscurance", Proceeding EGSR '13 Proceedings of the Eurographics Symposium on Rendering, Pages 97-105 
      • Kaplanyan A., and Dachsbacher C. 2010. “Cascaded Light Propagation Volumes for Real-Time Indirect Illumination”, In Proc. of the ACMSIGGraphSymposium on Interactive 3D Graphics and Games 
    • Shadow map
      • Daniel Scherzer, Stefan Jeschke, Michael Wimmer, "Pixel-Correct Shadow Maps with Temporal Reprojection and Shadow Test Confidence", ProceedingEGSR'07 Proceedings of the 18th Eurographics conference on Rendering Techniques, Pages 45-50
      • Thomas Annen, Tom Mertens, Philippe Bekaert, Hans-Peter Seidel, Jan Kautz, "Convolution Shadow Maps", Proceeding EGSR'07 Proceedings of the 18th Eurographics conference on Rendering Techniques, Pages 51-60 
      • Tobias Ritschel, Thorsten Grosch, Jan Kautz, Stefan Muller, "Interactive Illumination with Coherent Shadow Maps", Proceeding EGSR'07 Proceedings of the 18th Eurographics conference on Rendering Techniques, Pages 61-72 
      • Tomas Barak, JiriBittner ,Vlastimil Havran, “Temporally Coherent Adaptive Sampling for Imperfect Shadow Maps”, Proceeding EGSR '13 Proceedings of the Eurographics Symposium on Rendering, Pages 87-96 
      • Li Shen, Jieqing Feng, Baoguang Yang, "Exponential Soft Shadow Mapping", Computer Forum Volume 32 Issue 4, Pages 107–116, July 2013 
      • Dachsbacher, C., and Stamminger, M., "Reflective shadow maps." In Proc. of the Symposium on Interactive 3D Graphics and Games
    • Reflection, refraction, and caustics
      • *Wyman, C., “An approximate image-space approach for interactive refraction.” ACM Trans. Graph. 24(3), 1050–1053 (2005) 
      • *Wyman, C., and Davis, S., “Interactive image-space techniques for approximating caustics.”, In: Proceedings of the 2006 Symposium on Interactive 3D Graphics and Games, I3D ’06, pp. 153–160 (2006) 
      • Xu, K., Ma, L.Q., Ren, B., Wang, R., and Hu, S.M., “Interactive hair rendering and appearance editing under environment lighting.” ACM Trans. Graph.30(6), 173:1–173:10 (2011)
  • Set 2: Motion Graphs Set
    1. Motion editing thesis(完整REVIEW): Lucas Kovar's thesis Automated Methods for Data-Driven Synthesis of Realistic and Controllable Human Motion
    • Motion editing
      1. * Michael Gleicher, "Retargeting Motion to New Characters", Proceedings of ACM SIGGRAPH 98, page 33--42 — jul 1998 
      2. * Michael Gleicher , Hyun Joon Shin, Lucas Kovar, and Andrew Jepsen., “Snap Together Motion.”, I3D 2003.
      3. *Michael Gleicher, "Motion Path Editing", Proceedings of the 2001 ACM Symposium on Interactive 3D Graphics — mar 2001 
      4. *Hyun Joon Shin, Lucas Kovar, Michael Gleicher, "Physical Touchup of Human Motion", Proceedings of Pacific Graphics — oct 2003
      5. Ikemoto, Leslie, Arikan, Okan and Forsyth, David A. (2006), “Knowing when to put your foot down.” In: Olano, Marc and Séquin, Carlo H. (eds.) Proceedings of the 2006 Symposium on Interactive 3D Graphics, SI3D 2006, March 14-17, 2006, Redwood City, California, USA 2006. 
      6. Lucas Kovar, John Schreiner, and Michael Gleicher, "Footskate cleanup for motion capture editing",  Proceedings of the ACM SIGGRAPH Symposium on Computer Animation, page 97--104 — 2002 
      7. Hyun Joon Shin, Jehee Lee, Michael Gleicher, and Sung Yong Shin, "Computer Puppetry: An Importance-Based Approach", ACM Transcations on Graphics, Volume 20, Number 2 — apr 2000
  • Motion graph

    1. *Lucas Kovar, Fred Pighin and Michael Gleicher, "Motion Graphs", SIGGRAPH 2002 
    2. *Okan Arkan and David Forsyth, "Interactive Motion Generation From Examples", SIGGRAPH 2002 
    3. *Lucas Kovar, and Michael Gleicher, "Flexible Automatic Motion Blending with Registration Curves", Proceedings of Computer Animation — jul 2003 
    4. *Lucas Kovar, and Michael Gleicher, "Automated Extraction and Parameterization of Motions in Large Data Sets", ACM Transcations on Graphics, Volume 23, Number 3, page 559--568 — aug 2004 
    5. *Jehee Lee et al., "Interactive Contol of Avatars Animated With Human Motion Data",  SIGGRAPH 2002 
    6. *Heck, Rachel and Michael Gleicher. Parametric Motion Graphs. Proceedings of Symposium on Interactive 3D Graphics and Games 2007 
  • Facial animation and skinning

    1. *Alex Mohr, Michael Gleicher, "Building Efficient, Accurate Character Skins From Examples", ACM Transcations on Graphics, Volume 22, Number 3, page 562--568 — jul 2003
    2. Sofien Bouaziz, Yangang Wang, Mark Pauly, "Online Modeling For Realtime Facial Animation", Siggraph 2013
    3. *Chen Cao, Yanlin Weng, Stephen Lin, Kun Zhou,"3D Shape Regression for Real-time Facial Animation", Siggaph 2013
    4. Hao Li, Jihun Yu, Yuting Ye, Chris Bregler, "Realtime Facial Animation with On-the-fly Correctives", Siggraph 2013
    5. Amit H. Bermano, Derek Bradley, Thabo Beeler, Fabio Zund, Derek Nowrouzezahrai, Ilya Baran, Olga Sorkine,Hanspeter Pfister, Robert W. Sumner, Bernd Bickel, Markus Gross, “Facial Performance Enhancement Using Dynamic Shape Space Analysis”, Siggraph 2014
    6. Feng Xu, Yilong Liu, Jinxiang Chai, Xin Tong, “Controllable High-Fidelity Facial Performance Transfer”, Siggraph 2014
    7. Chen Cao, Qiming Hou, Kun Zhou, Displaced Dynamic Expression Regression for Real-time Facial Tracking and Animation , Siggraph 2014
    8. Thabo Beeler, Derek Bradley, “Rigid Stabilization of Facial Expressions” , Siggraph 2014
    9. Fuhao Shi, Hsiang-Tao Wu, Xin Tong, Jinxiang Chai, “Automatic Acquisition of High-fidelity Facial Performance Using Monocular videos” , Siggraph Asia 2014
    10. Chen Cao, Derek Bradley, Thabo Beeler, Kun Zhou, Real-Time High-Fidelity Facial Performance Capture , Siggraph 2015 
    11. Hao Li, Laura Trutoiu, Kyle Olszewski, Lingyu Wei, Tristan Trutna, Pei-Lun Hsieh, Aaron Nicholls, Chongyang Ma, Facial Performance Sensing Head-Mounted Display , Siggraph 2015
    12. Yilong Liu, Feng Xu, Jinxiang Chai, Xin Tong, Lijuan Wang, Qiang Huo, Video-Audio Driven Real-Time Facial Animation , Siggraph Asis 2015
    13. Justus Thies, Michael Zollhofer, Matthias Niesner, Levi Valgaerts, Marc Stamminger, Christian Theobalt, Real-time Expression Transfer for Facial Reenactment , Siggraph Asia 2015
    14. Eduard Zell, Carlos Aliaga, Adrian Jarabo, Katja Zibrek, Diego Gutierrez, Rachel McDonnell, Mario Botsch, To Stylize or not to Stylize? The Effect of Shape and Material Stylization on the Perception of Computer-Generated Faces , Siggraph Asia 2015
    15. Pablo Garrido, Michael Zollhoefer, Dan Casas, Levi Valgaerts, Kiran Varanasi, Patrick Perez, Christian Theobalt, Reconstruction of Personalized 3D Face Rigs from Monocular Video , Siggraph 2016
    16. Chen Cao, Hongzhi Wu, Yanlin Weng, Tianjia Shao, Kun Zhou, Real-time Facial Animation with Image-based Dynamic Avatars , Siggraph 2016
    17. Graham Fyffe, Andrew Jones, Oleg Alexander, Ryosuke Ichikari, Paul Debevec, Driving High-Resolution Facial Scans with Video Performance Capture , Siggraph 2015
    18. Alec Jacobson , Daniele Panozzo , Oliver Glauser , Cédric Pradalier , Otmar Hilliges , Olga Sorkine-Hornung, Tangible and modular input device for character articulation, ACM Transactions on Graphics (TOG), v.33 n.4, July 2014
    19. Oliver Glauser , Wan-Chun Ma , Daniele Panozzo , Alec Jacobson , Otmar Hilliges , Olga Sorkine-Hornung, Rig animation with a tangible and modular input device, ACM Transactions on Graphics (TOG), v.35 n.4, July 2016
  • Set 3: Physical Simulation

Bullet Real-time physical engine: http://bulletphysics.org/wordpress/

  • Rigid body and Elastic object

    1. Hadap and Magnenat-Thalmann,“Modeling Dynamic Hair as a Continuum” CGF 2001
    2. *Iben, Meyer, Petrovic, Soares,Anderson, Witkin,“Artistic Simulation of Curly Hair,” Pixar Technical Memo
    3. Lily Kharevych, Patrick Mullen, Houman Owhadi and Mathieu Desbrun,Numerical Coarsening of Inhomogeneous Elastic Materials, SIGGRAPH 2009.
    4. Jernej Barbič, Marco da Silva, Jovan Popović, Deformable Object Animation Using Reduced Optimal Control, SIGGRAPH 2009.
    5. McAdams, Selle, Ward, Sifakis,  and Teran,“Detail preserving continuum simulation of straight hair,”
    6. Selle, Lentine, and Fedkiw,“A Mass Spring Model for Hair Simulation,” SIGGRAPH 2008,
  • Spring-mass system and cloth

    1. * Van Gelder, A., "Approximate Simulation of Elastic Membranes by Triangulated Spring Meshes", Journal of Graphics Tools, Vol. 3, pp. 21-42 (1998).
    2. *Baraff, D. and Witken, A., "Large Steps in Cloth Simulation", SIGGRAPH 98, 43-54 (1999).
    3. *James, D. and Pai, D., "ArtDefo: Accurate Real Time Deformable Objects", SIGGRAPH 99, 65-72 (1999).
    4. *O'Brien, J. and Hodgins, J., "Graphical Modeling and Animation of Brittle Fracture", SIGGRAPH 99, 137-146 (1999).
    5. *James and Pai, "DyRT: Dynamic Response Textures for Real Time Deformation Simulation with Graphics Hardware," SIGGRAPH 2002
    6. * Bridson et al. Robust Treatment of Collisions, Contact, and Friction for Cloth Animation, SIGGRAPH 2002
    7. Muller, Dorsey, McMillan, Jagnow, and Cutler, "Stable Real-Time Deformations," SCA 2002
    8. Eric G. Parker and James F. O'Brien. Real-Time Deformation and Fracture in a Game Environment. In Proceedings of the ACM SIGGRAPH/Eurographics Symposium on Computer Animation, pages 156–166, August 2009.
    9. Harmon, Vouga, Smith, Tamstorf, and Grinspun,“Asynchronous Contact Mechanics,” SIGGRAPH 2009
    10. Etzmuβ, Keckeisen, and Straβer, "A Fast Finite Element Solution for Cloth Modelling," Pacific Graphics 2003,
    11. Hecht, Lee, Shewchuk, and O'Brien, "Updated Sparse Cholesky Factors for Corotational Elastodynamics," TOG 2012
  • Fluid simulation

    1. *Foster and Metaxas, "Modeling the Motion of a Hot, Turbulent Gas",SIGGRAPH 1997,
    2. *Joe Stam, Stable Fluid, Proceeding SIGGRAPH '99 Proceedings of the 26th annual conference on Computer graphics and interactive techniques, Pages 121-128
    3. *Jos Stam, Visual simulation of smoke and fire, Proceedings of the Eurographic workshop on Computer animation and simulation, p.51-51, September 02-03, 2001, Manchester, UK
    4. *Foster, N. and Fedkiw, R., "Practical Animation of Liquids", SIGGRAPH 2001, 15-22 (2001).
    5. *Fedkiw, R., Stam, J. and Jensen, H.W., "Visual Simulation of Smoke", SIGGRAPH 2001, 23-30 (2001).
    6. *Nguyen, D., Fedkiw, R. and Jensen, H., "Physically Based Modeling and Animation of Fire", SIGGRAPH 2002, ACM TOG 21, 721-728 (2002). 
    7. *Bargteil, Goktekin, O’Brien, “A semi-Lagrangian contouring method for fluid simulation,” ACM TOG 2006
    8. *Müller, “Fast and Robust Tracking of Fluid Surfaces,” SCA 2009,
    9. *Carlson, Mucha, and Turk.“Rigid Fluid: Animating the Interplay Between Rigid Bodies and Fluid,” SIGGRAPH 2004,
    10. *McNamara, Popović, and Stam,“Fluid Control Using the Adjoint Method,” SIGGRAPH 2004,
    11. *Fattal, and Lischinski,“Target-Driven Smoke Animation,” SIGGRAPH 2004, 
    12. *Thuerey, Keiser, Pauly, and Ruede,“Detail-Preserving Fluid Control,” SCA 2006 
    13. * Raveendran, Thuerey, Wojtan, and Turk“Controlling Liquids Using Meshes,” SCA 2012
    14. Sanjit Patel , Anson Chu , Jonathan Cohen , Frederic Pighin, Fluid simulation via disjoint translating grids, ACM SIGGRAPH 2005 Sketches, July 31-August 04, 2005, Los Angeles, California
    15. Enright, D., Marschner, S. and Fedkiw, R., "Animation and Rendering of Complex Water Surfaces", SIGGRAPH 2002, ACM TOG 21, 736-744 (2002).
    16. Yubo Zhang, Kwan-Liu Ma, Spatio-temporal Extrapolation for Fluid Animation, Siggraph asia.
    17. Zherong Pan, Jin Huang, Yiying Tong , Changxi Zheng , Hujun Bao Interactive Localized Liquid Motion Editing
    18. Nadir Akinci, A. Dippel, Gizem Akinci, Matthias Teschner , Versatile Surface Tension and Adhesion for SPH Fluids
    19. Dan Gerszewski, Adam W. Bargteil , Physics-based Animation of Large-scale Splashing Liquids
    20. C. Horvath and W. Geiger, Directable, High-resolution Simulation of Fire on the GPU, SIGGRAPH 2009.
    21. Huamin Wang, Miao Liao, Qing Zhang, Ruigang Yang and Greg Turk, Physically Guided Liquid Surface Modeling from Videos, SIGGRAPH 2009.
    22. Zhu and Bridson,“Animating Sand as a Fluid,” SIGGRAPH 2005
    23. Goktekin, Bargteil, and O’Brien,“A Method for Animating Viscoelastic Fluids,” SIGGRAPH 2004
    24. Guendelman, Selle, Losasso, and Fedkiw,“Coupling Water and Smoke to Thin Deformable and Rigid Shells,” SIGGRAPH 2005
    25. Chentanez, Goktekin, Feldman, and O'Brien,“Simultaneous Coupling of Fluids and Deformable Bodies,” SCA 2006, 

This course was carefully titled to indicate its content. It covers various computing technologies useful for computer game development. It does NOT cover game development as a topic in itself, nor does it cover game design, and it doesn't even cover all the computing technology that might go into a game (one glaring oversight is audio).

Some of the course content may be covered by other NTUST CSIE courses, but the emphasis in this course will be on real-time performance. This course will also, no doubt, contain many basic computer science algorithms in an application setting that tend not to be covered in other courses, such as spatial data structures.


Course Content

  • Anatomy of a Game
  • Introduction to Lag
  • Drawing Things
    • Mapping Techniques
      • Multi-texturing
      • Bump mapping
      • Light maps
      • Environment maps
      • Interesting uses for Textures
    • Multi-Pass Techniques
      • Buffers in the Graphics Pipeline
      • Shadows
      • Reflections
      • Interesting use for Buffers
    • Programming Graphics Hardware
    • Spatial Data Structures
      • Octrees
      • KD-Trees
      • BSP Trees
      • Spatial Hashing
    • Level of Detail
      • Impostors or Proxies
      • Decimation Schemes
      • Switching Representations
      • Progressive Schemes
    • Visibility
      • Cell-Portal Methods
      • PVS Computations
    • Terrain
      • Terrain Generation
      • Terrain Rendering
  • Making Things Move
    • Event Driven AI
    • State Machines
    • Scripting AI
    • Path Planning
      • A* Planning
      • Storing Paths
      • Alternatives
      • Path Following
    • Collision Detection
    • Motion Capture and Playback
    • Player and Camera Control
  • Playing with Others
    • Player and Camera Control
    • Network Architectures
    • Network Protocols for Gaming
    • Lag Compensation
    • Reducing Traffic
      • Dead-Reckoning
      • Area-of-Interest Management
    • Cheating and Fixes