1/12/09 2
Welcome to COMP 770 (236)
■ Instructor: Dinesh ManochaEmail: [email protected]: Brooks 250Office hours: W 1:00–2:00 (or by appt.)
■ Webpage: http://www.cs.unc.edu/~dm/UNC/COMP236/comp236.html
1/12/09 3
About you
■ Name
■ Your background
■ What are you studying?
■ Previous graphics experience
1/12/09 4
Prerequisites
■ COMP 665(235)° Displays and 2D Graphics
° Pixels, lines, images
° Foundations of 3D Graphics° Points, vectors, matrices, transformations
° Foundations of image analysis° Sampling, reconstruction, aliasing
° Foundations of computer vision° Eye, color, perception
1/12/09 5
Prerequisites
■ COMP 575(136)° Basic graphics pipeline° Transformations, clipping, rasterization° Texture mapping° Ray tracing° Hidden surface removal
1/12/09 6
Prerequisites
■ Know a programming language in the C family (C / C++ / C# / Java / Python)
■ Some familiarity with graphics API (OpenGL or DirectX)
■ Can use any platform (Windows, Mac or Linux)
01/12/09 7
Computer Graphics: Overview
Modelling Simulation &Rendering
Image
Computer vision inverts the process
1/12/09 8
Topics
■ Mathematical tools■ 3D models and
interaction■ Visibility■ Rasterization■ Lighting and shading■ Shadows■ Texture mapping
■ Ray tracing ■ Global illumination ■ Curves and surfaces ■ Simplification and levels
of detail■ Graphics hardware ■ Solid Modeling
1/12/09 10
3D models and interaction
■ Loading and view models■ Picking and selection■ Modeling a trackball■ VR is all about interaction
COMP 872
a
b
axis
01/12/09 11
Visibility Computations
■ Classic problem■ BSP trees■ Ray casting■ Depth buffering
Images courtesy of Cornell University
1/12/09 13
Lighting and shading
■ Flat, gouraud, and phong shading
■ Empirical and physically-based illumination models
■ BRDFs
1/12/09 14
Shadows
■ Shadow volumes■ Shadow maps■ Soft shadows
Umbra Penumbra
Images courtesy of Stamminger and Drettakis 02
1/12/09 15
Texture mapping
■ Surface parameterization
■ Mipmaps and filtering■ Reflection and
environment mapping
Images courtesy of Jeremy Birn (www.3drender.com/jbirn)
1/12/09 16
Ray tracing
■ Object intersection■ Reflection and refraction■ Depth-of-field, motion blur,
glossy reflections, soft shadows
1/12/09 17
Global illumination
■ Rendering equation ■ Path tracing, photon
mapping, radiosity■ COMP 870 Advanced
rendering
Images courtesy of Caligari (www.caligari.com)
1/12/09 18
Curves and surfaces
■ Bezier curves and B-splines■ NURBS and subdivision
surfaces■ Parametric solids■ COMP 767 Geometric and
solid modeling
1-level0-levels 2-levels
3-levels
4-levels
5-levels
1/12/09 19
Solid Modeling
■ CSG and B-Rep operations■ Generating complex solids
from simple shapes
■ COMP 767 Geometric and solid modeling
1/12/09 22
Animation & Simulation (less or no coverage)■ Keyframing■ Parameteric splines■ Motion capture■ Simulation■ COMP 768
1/12/09 26
Course Grading
■ Problem assignments & class participation (50%)
■ Midterm: 20%
■ Final Project: 30%
■ Guest lecture on a topic (optional): 10%
01/12/09 27
Grading
■ Assignments: 40%Final project: 30%Class participation
1 midterm: 30%
■ Late policy: Assignments will lose 5% each day late (M-F)
1/12/09 28
Course Project
■ Start thinking about a project idea ASAP
■ Should have some novelty
■ Ok to combine with RAship or other course projects
■ Project proposal due by Feb. 23, 2009
■ Periodic updates
■ Final project presentation (during finals week)
1/12/09 29
Honor Code
■ Students are here for the learning not the grade.
■ Collaboration encouraged, but assignments must be your own work.
■ Cite any other’s work if you use their code.
1/12/09 30
About your instructor
■ Have been at UNC for 16+ years
■ Research in geometric/solid modeling, real-time rendering, graphics hardware, simulation, ray tracing, sound rendering, crowd simulation, shadows
■ http://gamma.cs.unc.edu