1 / 36

Introduction to Computer Graphics

Introduction to Computer Graphics. Mohan Sridharan Based on Slides by Edward Angel and Dave Shreiner. Overview. Slides based on book by Edward Angel and Dave Shreiner: Interactive Computer Graphics, A Top-down Approach with Shader-Based OpenGL (Sixth Edition) , Addison-Wesley, 2011.

wind
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 to Computer Graphics Mohan Sridharan Based on Slides by Edward Angel and Dave Shreiner CS4395: Computer Graphics

  2. Overview • Slides based on book by Edward Angel and Dave Shreiner: Interactive Computer Graphics, A Top-down Approach with Shader-Based OpenGL (Sixth Edition), Addison-Wesley, 2011. • Lots of resources on companion website: http://www.cs.unm.edu/~angel/BOOK/INTERACTIVE_COMPUTER_GRAPHICS/SIXTH_EDITION/ • Some useful resources listed on course website: http://www.cs.ttu.edu/~smohan/Teaching/Spring12_CS4395/index.html CS4395: Computer Graphics

  3. Objectives • Broad introduction to Computer Graphics: • Software. • Hardware. • Applications. • Top-down approach: • Shader-Based OpenGL compatible with: • OpenGL 3.1 (and later). • Open GL ES 2.0 • webGL CS4395: Computer Graphics

  4. Prerequisites • Good programming skills in C (or C++). • Basic Data Structures: • Linked lists. • Arrays. • Geometry. • Simple Linear Algebra. CS4395: Computer Graphics

  5. Requirements • 4-5 programming projects: • Increasing levels of difficulty: totally 65% of grade. • Will move from 2D to 3D with lighting and texture. • Term Project: • You pick!  • Substantial challenge since it constitutes 25% of grade. • Responses + classroom participation: 10% CS4395: Computer Graphics

  6. Resources • Can run OpenGL on any system: • Windows: check graphics card properties for level of OpenGL supported. • Linux. • Mac: may need extensions for 3.1 equivalence. • Get GLUT from web if needed: • Provided on Macs. • freeglut available on web. • Get GLEW from web. • WebGL: most newer browsers. CS4395: Computer Graphics

  7. References • www.opengl.org • Standards documents, sample code. • The OpenGL Programmer’s Guide (the Redbook) 7th Edition: • The definitive reference. • Mixes 3.0 and 3.1 • OpenGL Shading Language, 3rd Edition. • OpenGL ES 2.0 Programming Guide. CS4395: Computer Graphics

  8. Outline: Part 1 • Part 1: Introduction. • Text: Chapter 1. • Chapter topics: • What is Computer Graphics? • Applications Areas. • History. • Image formation. • Basic Architecture. CS4395: Computer Graphics

  9. Outline: Part 2 • Part 2: Basic OpenGL. • Text: Chapter 2. • Chapter topics: • Architecture. • GLUT. • Simple programs in two and three dimensions. • Basic shaders and GLSL. • Interaction. CS4395: Computer Graphics

  10. Outline: Part 3 • Part 3: Three-Dimensional Graphics. • Text: Chapters 3-5. • Chapter Topics: • Geometry. • Transformations. • Homogeneous Coordinates. • Viewing. • Lighting and Shading. CS4395: Computer Graphics

  11. Outline: Part 4 • Part 4: Implementation. • Text: Chapter 6. • Chapter topics: • Approaches (object vs. image space). • Implementing the pipeline. • Clipping. • Line drawing. • Polygon Fill. • Display issues (color). CS4395: Computer Graphics

  12. Outline: Part 5 • Part 5: Discrete Methods. • Text: Chapter 7. • Chapter topics: • Buffers. • Texture Mapping. • Shader Applications. • Compositing and Transparency. CS4395: Computer Graphics

  13. Outline: Part 6 • Part 6: Hierarchy and Procedural Methods. • Text: Chapters 8-9. • Chapter topics: • Tree Structured Models. • Traversal Methods. • Scene Graphs. • Particle Systems. CS4395: Computer Graphics

  14. Outline: Part 7 • Part 7: Curves and Surfaces. • Text: Chapter 10. CS4395: Computer Graphics

  15. Outline: Part 8 • Part 8: Advanced Rendering. • Text: Chapter 11. • We are finally done! CS4395: Computer Graphics

  16. Extra Lectures • Marching Squares. • Virtual Trackball. • Environment Mapping. • Shadows, fractals. • Display Issues. • Bump Mapping, sampling and aliasing. • Reflection and transmission. CS4395: Computer Graphics

  17. What is Computer Graphics? CS4395: Computer Graphics

  18. Computer Graphics • Computer graphics deals with all aspects of creating images with a computer: • Hardware. • Software. • Applications. CS4395: Computer Graphics

  19. Example • Where did this image come from? • What hardware/software did we need to produce it? CS4395: Computer Graphics

  20. Preliminary Answer • Application: object is an artist’s rendition of the sun for an animation to be shown in a domed environment (planetarium). • Software: Maya for modeling and rendering but Maya is built on top of OpenGL. • Hardware: PC with graphics card for modeling and rendering. CS4395: Computer Graphics

  21. Basic Graphics System Output device Input devices Image formed in frame buffer CS4395: Computer Graphics

  22. CRT Can be used either as a line-drawing device (calligraphic) or to display contents of frame buffer (raster mode) CS4395: Computer Graphics

  23. Computer Graphics: 1950-1960 • Computer graphics goes back to earliest days of computing: • Strip charts. • Pen plotters. • Simple displays using A/D converters to go from computer to calligraphic CRT. • Cost of refresh for CRT too high: • Computers slow, expensive, unreliable (not anymore!). CS4395: Computer Graphics

  24. Computer Graphics: 1960-1970 • Wireframe graphics: • Draw only lines! • Sketchpad. • Display Processors. • Storage tube. wireframe representation of sun object CS4395: Computer Graphics

  25. Sketchpad • Ivan Sutherland’s PhD thesis at MIT: • Recognized the potential of man-machine interaction. • Loop: • Display something. • User moves light pen. • Computer generates new display. • Sutherland also created many of the now common algorithms for computer graphics. CS4395: Computer Graphics

  26. Display Processor • Rather than have the host computer try to refresh display, use a special purpose computer called a display processor(DPU). • Graphics stored in display list/file on display processor. • Host compiles display list and sends to DPU. CS4395: Computer Graphics

  27. Direct View Storage Tube • Created by Tektronix: • Did not require constant refresh. • Standard interface to computers: • Allowed for standard software. • Plot3D in Fortran. • Relatively inexpensive: • Opened door to use of computer graphics for CAD community. CS4395: Computer Graphics

  28. Computer Graphics: 1970-1980 • Raster Graphics. • Beginning of graphics standards. • IFIPS: • GKS: European effort. • Becomes ISO 2D standard. • Core: North American effort. • 3D but fails to become ISO standard. • Workstations and PCs. CS4395: Computer Graphics

  29. Raster Graphics • Image produced as an array (the raster) of picture elements (pixels) in the frame buffer. CS4395: Computer Graphics

  30. Raster Graphics • Allows us to go from lines and wire frame images to filled polygons! CS4395: Computer Graphics

  31. PCs and Workstations • Although we no longer make the distinction between workstations and PCs, they evolved from different roots: • Early workstations characterized by: • Networked connection: client-server model. • High-level of interactivity. • Early PCs included frame buffer as part of user memory: • Easy to change contents and create images. CS4395: Computer Graphics

  32. Computer Graphics: 1980-1990 Realism comes to computer graphics  smooth shading environment mapping bump mapping CS4395: Computer Graphics

  33. Computer Graphics: 1980-1990 • Special purpose hardware: • Silicon Graphics geometry engine: VLSI implementation of graphics pipeline. • Industry-based standards: • PHIGS. • RenderMan. • Networked graphics: X Window System. • Human-Computer Interface (HCI). CS4395: Computer Graphics

  34. Computer Graphics: 1990-2000 • OpenGL API. • Completely computer-generated feature-length movies (Toy Story) are successful. • New hardware capabilities: • Texture mapping. • Blending. • Accumulation, stencil buffers. CS4395: Computer Graphics

  35. Computer Graphics: 2000- • Photorealism. • Graphics cards for PCs dominate market: Nvidia, ATI. • Game boxes and game players determine market direction. • Computer graphics routine in movie industry: Maya, Lightwave. • Programmable pipelines. CS4395: Computer Graphics

  36. What next? • Overview of image formation. • Overview of graphics architectures. CS4395: Computer Graphics

More Related