1 / 27

Introduction to Computer Graphics

Introduction to Computer Graphics. Kurt Akeley CS248 Lecture 1 25 September 2007 http://graphics.stanford.edu/courses/cs248-07/. Instructor information. Education and employment BEE University of Delaware, 1976-1980 MSEE Stanford, 1980-1982 SGI co-founder, chief engineer , CTO, 1982–2000

ahitchcock
Download Presentation

Introduction to Computer Graphics

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction toComputer Graphics Kurt Akeley CS248 Lecture 1 25 September 2007 http://graphics.stanford.edu/courses/cs248-07/

  2. Instructor information Education and employment • BEE University of Delaware, 1976-1980 • MSEE Stanford, 1980-1982 • SGI co-founder, chief engineer, CTO, 1982–2000 • PhD (EE) Stanford, 2001-2004 • NVIDIA graphics architect (part-time) 2001-2004 • Microsoft Research Asia asst. director, 2005-2007 • Principal Researcher, MSR Silicon Valley

  3. Instructor information Professional experience • Graphics systems: GT, GTX, VGX, RealityEngine, … • OpenGL: specification, early extensions, ARB, … • SIGGRAPH: attend 1984-2007, papers chair 2000, … • SIGGRAPH Asia 2008: papers chair Teaching experience • Co-taught CS448, Real-time Graphics Architecture, with Pat Hanrahan fall 2001 and spring 2007 • Lectured in several SIGGRAPH courses • Have given lots of talks

  4. Instructor information “Newark” laser printer controller (1979) GE4 without Clark Geometry Engine (1987)

  5. Instructor information Fixed-viewpoint volumetric display (2004)

  6. Instructor information This is my first • Stanford course on my own • time teaching an introductory graphics course • detailed exposure to some concepts I’m learning too! • Let’s interact • I’ll try not to cram too much into the lectures

  7. Teaching assistants Andrew Adams Won game competition in ’04TA’d course in ’05 and ’06 Justin Talbot Second-year PhD studentBYU MS global illumination

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

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

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

  11. Color perception Color is perceptual Stimulus is spectral energy in 400-700 nm range Monochromatic differentiation requires: • Overlapping cone sensitivities (ratios) • Only two cone types Three cone types (a human quirk) • Enrich our perceptual experience • Require stimulation with (at least) three “colors” • RGB is the display tuple Normalized typical human cone cell responses to monochromatic spectral stimuli (Source: Wikipedia)

  12. imaging CCD sensor (Bayer pattern) Pixels graphics LCD display pixel

  13. Pixels Why do CCDs use the Bayer pattern? Why don’t LCD monitors use the Bayer pattern? What is graphics missing? • Microsoft ClearType • 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.

  14. objects (triangles) image (pixels) Graphics lights (photons) viewer

  15. objects (triangles) Physical reality (sort of) for (each photon) for (each triangle) for (each pixel) draw; lights (photons) image (pixels)

  16. objects (triangles) Ray tracing for (each pixel) for (each triangle) for (each light) draw; lights (photons) image (pixels)

  17. objects (triangles) Physical reality (sort of) for (each light) for (each triangle) for (each pixel) draw; lights image (pixels)

  18. objects (triangles) Traditional graphics pipeline (OpenGL) for (each triangle) for (each light) for (each pixel) draw; lights image (pixels)

  19. objects (triangles) Modern graphics pipeline (OpenGL 2.1) for (each triangle) for (each pixel) for (each light) draw; lights image (pixels)

  20. Global illumination Light paths are complex, not light  triangle  pixel Nature finds equilibrium efficiently Computers struggle 

  21. Animation Sequence of still frames • Update rate: minimum of 24 hz or so • Flicker rate: minimum of 50 hz or so “Rule 1”: All discontinuous frame-to-frame changes correspond to discontinuous scene or visibility changes

  22. System latency Interactive graphics Frame rate and flicker rate

  23. API stacks web application application Gears of War VRML scene graph Unreal engine OpenGL 2.1 graphics API Direct3D 10 GeForce 8800 GPU Radeon 9600

  24. Graphics APIs are architectures web application application Gears of War VRML scene graph Unreal engine OpenGL 2.1 graphics API Direct3D 10 GeForce 8800 GPU Radeon 9600

  25. Summary Communication is the purpose of computer graphics • Human perception is the context • Fidelity is a tool, not (necessarily) a goal Our focus will be interactive graphics • Instructor’s bias • Emphasis on OpenGL Your instructor is learning too • Your opinions, corrections, and concerns are appreciated!

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

  27. End

More Related