Скачать презентацию Introduction to Computer Graphics Kurt Akeley CS 248 Скачать презентацию Introduction to Computer Graphics Kurt Akeley CS 248

db0f12a610054b3ada254de43773c865.ppt

  • Количество слайдов: 27

Introduction to Computer Graphics Kurt Akeley CS 248 Lecture 1 25 September 2007 http: Introduction to Computer Graphics Kurt Akeley CS 248 Lecture 1 25 September 2007 http: //graphics. stanford. edu/courses/cs 248 -07/

Instructor information Education and employment n BEE University of Delaware, 1976 -1980 n MSEE Instructor information Education and employment n BEE University of Delaware, 1976 -1980 n MSEE Stanford, 1980 -1982 n SGI co-founder, chief engineer, CTO, 1982– 2000 n Ph. D (EE) Stanford, 2001 -2004 n NVIDIA graphics architect (part-time) 2001 -2004 n Microsoft Research Asia asst. director, 2005 -2007 n Principal Researcher, MSR Silicon Valley CS 248 Lecture 1 Kurt Akeley, Fall 2007

Instructor information Professional experience n Graphics systems: GT, GTX, VGX, Reality. Engine, … n Instructor information Professional experience n Graphics systems: GT, GTX, VGX, Reality. Engine, … n Open. GL: specification, early extensions, ARB, … n SIGGRAPH: attend 1984 -2007, papers chair 2000, … n SIGGRAPH Asia 2008: papers chair Teaching experience n Co-taught CS 448, Real-time Graphics Architecture , with Pat Hanrahan fall 2001 and spring 2007 n Lectured in several SIGGRAPH courses n Have given lots of talks CS 248 Lecture 1 Kurt Akeley, Fall 2007

Instructor information “Newark” laser printer controller (1979) CS 248 Lecture 1 GE 4 without Instructor information “Newark” laser printer controller (1979) CS 248 Lecture 1 GE 4 without Clark Geometry Engine (1987) Kurt Akeley, Fall 2007

Instructor information Fixed-viewpoint volumetric display (2004) CS 248 Lecture 1 Kurt Akeley, Fall 2007 Instructor information Fixed-viewpoint volumetric display (2004) CS 248 Lecture 1 Kurt Akeley, Fall 2007

Instructor information This is my first n Stanford course on my own n time Instructor information This is my first n Stanford course on my own n time teaching an introductory graphics course n detailed exposure to some concepts I’m learning too! n Let’s interact n I’ll try not to cram too much into the lectures CS 248 Lecture 1 Kurt Akeley, Fall 2007

Teaching assistants Andrew Adams Justin Talbot Won game competition in ’ 04 TA’d course Teaching assistants Andrew Adams Justin Talbot Won game competition in ’ 04 TA’d course in ’ 05 and ’ 06 Second-year Ph. D student BYU MS global illumination CS 248 Lecture 1 Kurt Akeley, Fall 2007

Course content Based on the course as taught by Marc Levoy last year n Course content Based on the course as taught by Marc Levoy last year n http: //graphics. stanford. edu/courses/cs 248 -06/ More emphasis on Open. GL and applied graphics n Z-buffer, tuning, hardware, details & depth (why) Less emphasis on history and alternate approaches n Perspective in art, visibility algorithms, volume rendering Projects n First is new (still under construction) n Second is the same (for now) n Third (game competition) remains n But we may de-emphasize game play requirement n This course really isn’t about game play CS 248 Lecture 1 Kurt Akeley, Fall 2007

Human perception Interactive graphics is (typically) for human viewers n Guided-missile design is a Human perception Interactive graphics is (typically) for human viewers n Guided-missile design is a counterexample n Human will be presumed in this course Good designers know their customers’ needs and problems n Have basic understanding of visual perception n NTSC is a great engineering design example The evolution of computer graphics has been directed by the quirks of human perception, e. g. , n Tri-color stimulus n Sensitivity to change in light reaching the eye CS 248 Lecture 1 Kurt Akeley, Fall 2007

Purpose of computer graphics? Communication is the purpose Human perception is the context n Purpose of computer graphics? Communication is the purpose Human perception is the context n Techniques leverage visual perception abilities Fidelity is a tool, not (necessarily) the goal n Virtual reality is great, but n Don’t want to be limited to reality n Want to do super reality n Non-photorealistic rendering (NPR) is valuable – n Bill Buxton, Sketching User Experiences, 2006 No apology is required for “approximations” n CS 248 Lecture 1 Especially for interactive graphics Kurt Akeley, Fall 2007

Color perception Color is perceptual Stimulus is spectral energy in 400700 nm range Monochromatic Color perception Color is perceptual Stimulus is spectral energy in 400700 nm range Monochromatic differentiation requires: n Overlapping cone sensitivities (ratios) n Only two cone types Three cone types (a human quirk) n Enrich our perceptual experience n Require stimulation with (at least) three “colors” n CS 248 Lecture 1 RGB is the display tuple Normalized typical human cone cell responses to monochromatic spectral stimuli (Source: Wikipedia) Kurt Akeley, Fall 2007

Pixels graphics LCD display CS 248 Lecture 1 imaging pixel CCD sensor (Bayer pattern) Pixels graphics LCD display CS 248 Lecture 1 imaging pixel CCD sensor (Bayer pattern) Kurt Akeley, Fall 2007

Pixels Why do CCDs use the Bayer pattern? Why don’t LCD monitors use the Pixels Why do CCDs use the Bayer pattern? Why don’t LCD monitors use the Bayer pattern? What is graphics missing? n Microsoft Clear. Type n Claude Betrisey, Jim Blinn, Bodin Dresevic, Bill Hill, Greg Hitchcock, Bert Kely, Don Mitchell, John Platt, Turner Whitted, 20. 4: Displaced Filtering for Patterned Displays, Society for Information Display, 2000. CS 248 Lecture 1 Kurt Akeley, Fall 2007

Graphics lights (photons) objects (triangles) image (pixels) viewer CS 248 Lecture 1 Kurt Akeley, Graphics lights (photons) objects (triangles) image (pixels) viewer CS 248 Lecture 1 Kurt Akeley, Fall 2007

Physical reality (sort of) for (each photon) lights (photons) for (each triangle) for (each Physical reality (sort of) for (each photon) lights (photons) for (each triangle) for (each pixel) draw; objects (triangles) CS 248 Lecture 1 image (pixels) Kurt Akeley, Fall 2007

Ray tracing for (each pixel) lights (photons) for (each triangle) for (each light) draw; Ray tracing for (each pixel) lights (photons) for (each triangle) for (each light) draw; objects (triangles) CS 248 Lecture 1 image (pixels) Kurt Akeley, Fall 2007

Physical reality (sort of) for (each light) for (each triangle) lights for (each pixel) Physical reality (sort of) for (each light) for (each triangle) lights for (each pixel) draw; objects (triangles) CS 248 Lecture 1 image (pixels) Kurt Akeley, Fall 2007

Traditional graphics pipeline (Open. GL) for (each triangle) for (each light) lights for (each Traditional graphics pipeline (Open. GL) for (each triangle) for (each light) lights for (each pixel) draw; objects (triangles) CS 248 Lecture 1 image (pixels) Kurt Akeley, Fall 2007

Modern graphics pipeline (Open. GL 2. 1) for (each triangle) for (each pixel) lights Modern graphics pipeline (Open. GL 2. 1) for (each triangle) for (each pixel) lights for (each light) draw; objects (triangles) CS 248 Lecture 1 image (pixels) Kurt Akeley, Fall 2007

Global illumination Light paths are complex, not light triangle pixel Nature finds equilibrium efficiently Global illumination Light paths are complex, not light triangle pixel Nature finds equilibrium efficiently Computers struggle CS 248 Lecture 1 Kurt Akeley, Fall 2007

Animation Sequence of still frames n Update rate: minimum of 24 hz or so Animation Sequence of still frames n Update rate: minimum of 24 hz or so n Flicker rate: minimum of 50 hz or so “Rule 1”: All discontinuous frame-to-frame changes correspond to discontinuous scene or visibility changes CS 248 Lecture 1 Kurt Akeley, Fall 2007

Interactive graphics Frame rate and flicker rate System latency CS 248 Lecture 1 Kurt Interactive graphics Frame rate and flicker rate System latency CS 248 Lecture 1 Kurt Akeley, Fall 2007

API stacks web application Gears of War VRML scene graph Unreal engine Open. GL API stacks web application Gears of War VRML scene graph Unreal engine Open. GL 2. 1 graphics API Direct 3 D 10 Ge. Force 8800 GPU Radeon 9600 CS 248 Lecture 1 Kurt Akeley, Fall 2007

Graphics APIs are architectures web application Gears of War VRML scene graph Unreal engine Graphics APIs are architectures web application Gears of War VRML scene graph Unreal engine Open. GL 2. 1 graphics API Direct 3 D 10 Ge. Force 8800 GPU Radeon 9600 CS 248 Lecture 1 Kurt Akeley, Fall 2007

Summary Communication is the purpose of computer graphics n Human perception is the context Summary Communication is the purpose of computer graphics n Human perception is the context n Fidelity is a tool, not (necessarily) a goal Our focus will be interactive graphics n Instructor’s bias n Emphasis on Open. GL Your instructor is learning too n Your opinions, corrections, and concerns are appreciated! CS 248 Lecture 1 Kurt Akeley, Fall 2007

Reading assignment Before Thursday’s class, read n Mark Segal and Kurt Akeley, The Design Reading assignment Before Thursday’s class, read n Mark Segal and Kurt Akeley, The Design of the Open. GL Graphics Interface, unpublished n Open. GL Programming Guide n Chapter 1 - Introduction to Open. GL n Appendix D - Basics of GLUT: the Open. GL Utility Tool Also become familiar with www. opengl. org: n Open. GL, GLU, and GLUT Specifications n Extension specifications n … Optional: n David Blythe, The Direct 3 D 10 System SIGGRAPH 2006 , n Set up your Open. GL/GLUT programming environment CS 248 Lecture 1 Kurt Akeley, Fall 2007

End CS 248 Lecture 1 Kurt Akeley, Fall 2007 End CS 248 Lecture 1 Kurt Akeley, Fall 2007