Course the OpenGL Graphics System

Sommaire: Course the OpenGL Graphics System

1 Introduction
1.1 What is the OpenGL Graphics System?
1.2 Programmer’s View of OpenGL
1.3 Implementor’s View of OpenGL
1.4 Our View
2 OpenGL Operation
2.1 OpenGL Fundamentals
2.2 GL State
2.3 GL Command Syntax
2.4 Basic GL Operation
2.5 GL Errors
2.6 Begin/End Paradigm
2.6.1 Begin and End Objects
2.6.2 Polygon Edges
2.6.3 GL Commands withinBegin/End
2.7 Vertex Specication
2.8 Vertex Arrays
2.9 Rectangles
2.10 Coordinate Transformations
2.10.1 Controlling the Viewport
2.10.2 Matrices
2.10.3 Normal Transformation
2.10.4 Generating texture coordinates
2.11 Clipping
2.12 Current Raster Position
2.13 Colors and Coloring
2.13.1 Lighting
2.13.2 Lighting Parameter Specication
2.13.3 ColorMaterial
2.13.4 Lighting State
2.13.5 Color Index Lighting
2.13.6 Clamping or Masking
2.13.7 Flatshading
2.13.8 Color and Texture Coordinate Clipping
2.13.9 Final Color Processing
3 Rasterization
3.1 Invariance
3.2 Antialiasing
3.3 Points
3.3.1 Point Rasterization State
3.4 Line Segments
3.4.1 Basic Line Segment Rasterization
3.4.2 Other Line SegmentFeatures
3.4.3 Line Rasterization State
3.5 Polygons
3.5.1 Basic Polygon Rasterization
3.5.2 Stippling
3.5.3 Antialiasing
3.5.4 Options Controlling Polygon Rasterization
3.5.5 Depth O set
3.5.6 Polygon Rasterization State
3.6 Pixel Rectangles
3.6.1 Pixel Storage Modes
3.6.2 Pixel Transfer Modes
3.6.3 Rasterization of Pixel Rectangles
3.6.4 Pixel Transfer Operations
3.7 Bitmaps
3.8 Texturing
3.8.1 Texture Minication
3.8.2 Texture Magnication
3.8.3 Texture State and Proxy State
3.8.4 Texture Objects
3.8.5 Texture Environments and Texture Functions
3.8.6 Texture Application
3.9 Fog
3.10 Antialiasing Application
4 Fragments and the Framebuer
4.1 Per-Fragment Operations
4.1.1 Pixel Ownership Test
4.1.2 Scissor test
4.1.3 Alpha test
4.1.4 Stencil test
4.1.5 Depth buer test
4.1.6 Blending
4.1.7 Dithering
4.1.8 Logical Operation
4.2 Whole Framebuer Operations
4.2.1 Selecting a Buer for Writing
4.2.2 Fine Control of Buer Updates
4.2.3 Clearing the Buers
4.2.4 The Accumulation Buer
4.3 Drawing, Reading, and Copying Pixels
4.3.1 Writing to the Stencil Buer
4.3.2 Reading Pixels
4.3.3 Copying Pixels
4.3.4 Pixel draw/read state
5 Special Functions
5.1 Evaluators
5.2 Selection
5.3 Feedback
5.4 Display Lists
5.5 FlushandFinish
5.6 Hints
6 State and State Requests
AInvariance
A.1Repeatability
A.2Multi-pass Algorithms
A.3Invariance Rules
A.4What All This Means
B Corollaries
CVersion 1.1
C.1 Vertex Array
C.2 Polygon Oset
C.3 Logical Operation
C.4 Texture Image Formats
C.5 Texture Replace Environment
C.6 Texture Proxies
C.7 CopyTexture and Subtexture
C.8 Texture Objects
C.9 Other Changes
C.10 Acknowledgements

Extrait du course the OpenGL Graphics System

Chapter 1 Introduction
This document describes the OpenGL graphics system: what it is, howit acts, and what is required to implement it. We assume that the reader has at least a rudimentary understanding of computer graphics. This means familiarity with the essentials of computer graphics algorithms as well as familiarity with basic graphics hardware and associated terms.
1.1 What is the OpenGL Graphics System?
OpenGL (for \Open Graphics Library ») is a software interface to graphics hardware. The interface consists of a set of several hundred procedures and functions that allow a programmer to specify the objects and operations involved in producing high-quality graphical images, speci cally color images of three-dimensional objects. Most of OpenGL requires that the graphics hardware contain a frame-bu er. Many OpenGL calls pertain to drawing objects such as points, lines,polygons, and bitmaps, but the waythatsomeofthis drawing occurs (such as when antialiasing or texturing is enabled) relies on the existence of a framebu er. Further, some of OpenGL is speci cally concerned with frame-bu er manipulation.
1.2 Programmer’s View of OpenGL
To the programmer, OpenGL is a set of commands that allow the speci -cation of geometric objects in two or three dimensions, together with com-mands that control how these objects are rendered into the framebu er.
1.3 Implementor’s View of OpenGL
To the implementor, OpenGL is a set of commands that affect the opera-tion of graphics hardware. If the hardware consists only of an addressable framebu er, then OpenGL must be implemented almost entirely on the host CPU. More typically, the graphics hardware may comprise varying degrees of graphics acceleration, from a raster subsystem capable of rendering two-dimensional lines and polygons to sophisticated oating-point processors capable of transforming and computing on geometric data. The OpenGL implementor’s task is to provide the CPU software interface while dividing the work for each OpenGL command between the CPU and the graphics hardware. This division must be tailored to the available graphics hardware to obtain optimum performance in carrying out OpenGL calls. OpenGL maintains a considerable amount of state information. This state controls how objects are drawn into the framebu er. Some of this state is directly available to the user: he or she can make calls to obtain its value. Some of it, however, is visible only by the e ect it has on what is drawn. One of the main goals of this speci cation is to make OpenGL state information explicit, to elucidate howit changes, and to indicate what its e ects are.
1.4 Our View
WeviewOpenGLasastatemachine that controls a set of speci c draw-ing operations. This model should engender a speci cation that satises the needs of both programmers and implementors. It does not, however,necessarily provide a model for implementation. An implementation must produce results conforming to those produced by the speci ed methods, but there maybe ways to carry out a particular computation that are more ecient than the one specied.
Chapter 2 OpenGLOperation
2.1 OpenGL Fundamentals
OpenGL (henceforth, the \GL ») is concerned only with rendering into a framebu er (and reading values stored in that framebuffer). There is no support for other peripherals sometimes associated with graphics hardware,such as mice and keyboards. Programmers must rely on other mechanisms to obtain user input. The GL drawsprimitivessubject to a number of selectable modes. Each primitive isapoint, line segment, polygon, or pixel rectangle. Eachmode maybechanged independently; the setting of one does not a ect the settings of others (although manymodes mayinteract to determine what eventually ends up in the framebu er). Modes are set, primitives speci ed, and other GL operations described by sendingcommandsin the form of function or procedure calls.

LIRE AUSSI :  Cours de C/C++ par la pratique

…….

Si le lien ne fonctionne pas correctement, veuillez nous contacter (mentionner le lien dans votre message)
Course the OpenGL Graphics System (1296 KO) (Cours PDF)
OpenGL Graphics System

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *