SlideServe
Menu
Préférences
© SlideServe · v2026

Computer Graphics (fall 2009)

elie avatar
13 diapositives · 272 Views · Aug 23, 2014

This document provides an overview of OpenGL, a cross-platform graphics API used for rendering 2D and 3D computer graphics. It covers the fundamental components required for rendering a 3D scene, including objects, cameras, light sources, and material properties. The document also delves into interactive rendering simplifications, the process for rendering triangles, and the hardware-independent nature of OpenGL. Key concepts such as the graphics pipeline, rendering modes, and additional libraries for UI management are discussed, along with references for further reading.

Computer Graphics (fall 2009) - slide 1
01 / 13Computer Graphics (fall 2009)
1 / 17

Télécharger la présentation

Computer Graphics (fall 2009)
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Computer Graphics(fall 2009) School of Computer Science University of Seoul

  2. OpenGL Graphics System

  3. 3D Graphics API • OpenGL • Microsoft Direct3D • Implemented in DirectX • Supports MS Windows only (cf: Cedega) • RISpec (RenderMan Interface Specification) • Developed by Pixar Animation Studios • Off-line rendering • Java3D • Scene graph based • Runs on top of OpenGL or Direct3D.

  4. What Do We Need To Render A 3D Scene? • Objects • A Viewer (Camera) • Light Sources • Material Properties(of Objects) [image courtesy of http://www.yourdictionary.com/computer/3-d-graphics]

  5. Simplifications for Interactive Rendering • Objects • Composed of primitives (points, lines, triangles,…) • A Viewer (Camera) • Two types (orthogonal & perspective) • Light Sources • Simple lights (directional and positional) • Gouraud shading model • Material Properties (of Objects) • Phong reflection model

  6. How To Render A Triangle • For each vertex • Transforms it according to the current setting • Computes its color based on the material property and lights • Assembles three vertices into a triangle • Rasterizes the triangle • For each pixel • Assigns its color by interpolating the color of vertices [image courtesy of nVidia]

  7. OpenGL • “…standard specification defining a cross-language, cross-platform API for writing applications that produce 2D and 3D computer graphics.” (Wikipedia) • Specifies common interface independent of graphics hardware.  Hardware vendors need to provide drivers. • Cross-platform

  8. OpenGL (cont’d) • Rendering feature only • No UI, window control, file I/O, etc… • Additional library (e.g., GLUT) required for a complete program. • Immediate mode • State machine • Pipeline architecture • Low level operations only

  9. Hardware Independent • Hardware-specific OpenGL drivers need to be installed. • nVIDIA • AMD (ATI) • Intel • Some features are supported by S/W not H/W.

  10. Cross-platform • Requires a layer between the OpenGL and the window system • GLX: for X Window System • WGL: for Microsoft Windows • AGL (Apple Graphics Library): for MacOS

  11. Rendering Only • Requires additional library for UI, windows management, etc. • Win32 API • GLUT (OpenGL Utility Toolkit) • Qt • wxWidgets

  12. Graphics Pipeline • For better throughput! [image courtesy of Wikipedia]

  13. The Design of OpenGL • Recommended reading: “The Design of the OpenGL Graphics Interface” (1994, Mark Segal and Kurt Akeley)