COMP4070 Computer Graphics Dr. Amy Zhang
Welcome! 2 Introductions Administrative Matters Course Outline What is Computer Graphics?
About us… 3 Dr. Amy Zhang E408-R6 Mr. Mike Huang E408-H1 Course website
About you… 4 What is your name? Where do you come from? What are your experiences on computer graphics? What do you want to learn from this course?
Outline Introductions Administrative Matters Course Outline Applications of Computer Graphics 5
Lectures and Tutorials 6 Lectures Tuesday 17:00-17:50 pm B203 Friday 8:00-9:50 am B202 Tutorials Will be announced later Usually weekly - exceptions will be announced
What do you need to know? 7 A programming language in the C-family C / C++ All Assignments need to be submitted in C / C++ NOT Graphics / OpenGL / linear algebra We will cover what you need in class
Reference books 8 Computer Graphics Using OpenGL, by Francis S. Hill, Jr., 2nd or 3rd edition, Prentice Hall, ISBN: OpenGL Programming Guide, Fourth Edition: The Official Guide to Learning OpenGL, Version 1.5, by Woo et al., Addison Wesley, ISBN:
Required Software 9 Microsoft Visual Studio 2008 or Visual-CPP Your finished programs must compile and run under Windows OS You can use UNIX, Linux, or Mac OS X for development, but we don’t support them
Grading 10 The final grade depends on: Continuous assessment: 50% Assignment average: 40% Midterm test: 10% Final exam: 50%
Assignment 11 About 6 short programming assignments: 1 student independently Submit via The deadline is non-negotiable
Academic Honesty 12 You must identify code that is not your own Mention original author(s) in source or README files Do not remove original headers! Do not collaborate with other students
Outline 13 Introductions Administrative Matters Course Outline Applications of Computer Graphics
What is this course about? Basic goal: Teach you the fundamentals for writing your own graphics applications We want you to: learn how to programming in OpenGL understand computer graphics concepts have some fun! 14
Examples 15
Offline Rendering 8 Years Ago Shrek, PDI Dreamworks 16
Interactive 8 Years Ago Quake 3, id software 17
Modern Offline Rendering 18
Modern Offline Rendering Cars, Pixar 19
Modern Interactive Rendering Project Gotham Racing 20
What happened in the past 8 years? Interactive is delivering near-offline quality 1,000,000x faster GPUs have taken advantage of semiconductor trends to deliver performance GPU strengths/weaknesses have sparked innovation in algorithms and software 21
Trends: Moore’s law 22
PC Architecture 23
GPU Programming Nvidia, EG
How to get from here to here? 25
The Graphics Pipeline Application Command Geometry Rasterization Fragment Display CPU GPU 26
The Graphics Pipeline Quake 3: define game behavior networking user input events sound processing game AI game physics Application Command Geometry Rasterization Fragment Display 27
The Graphics Pipeline Quake 3: send OpenGL commands OpenGL driver: process GL command stream talk to GPU Application Command Geometry Rasterization Fragment Display 28
The Graphics Pipeline GPU: vertex transformations vertex lighting Clipping primitive assembly Application Command Geometry Rasterization Fragment Display 29
The Graphics Pipeline GPU: convert triangles to fragments tex coordinate interpolation color interpolation Application Command Geometry Rasterization Fragment Display 30
The Graphics Pipeline GPU: Texturing depth test color blending Application Command Geometry Rasterization Fragment Display 31
The Graphics Pipeline Application Command Geometry Rasterization Fragment Display id software 32
Ray Tracing 33
What we will cover Principles of graphics programming using OpenGL – Interactive 3D graphics – Details of OpenGL graphics pipeline – Special effects (bump mapping, etc.) Principles of ray tracing – Off-line photorealistic 3D graphics Fundamentals of computer graphics – Light & color, camera models, Bézier splines, etc. 34
Outline Introductions Administrative Matters Course Outline Applications of Computer Graphics 35
Movies & Games 36
Visualization Demo 37
Digital Photography & Video 38 panorama
Computer Aided Design (CAD) 39
Virtual and Augmented Reality 40
Art Artificial Evolution for Computer Graphics Karl Sims, SIGGRAPH ’91 Steven Parente 41
What is Computer Graphics? Creating real and fantasy worlds Gaining insights into data Improving photography & video Designing new products Augmenting & escaping reality Creating works of art 42
Links 43 Face morphing: Panorama: Holographic imaging: