Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

The Official Guide to Learning OpenGL, Version 1.1 (Redbook Second Edition)

.pdf
Скачиваний:
202
Добавлен:
02.05.2014
Размер:
8.22 Mб
Скачать

front-facing polygons: Reversing and Culling Polygon Faces

front-facing polygons:

specifying material property for: Defining Material Properties two-sided lighting: Two-sided Lighting

frustum: Perspective Projection

ftp (file-transfer protocol) site:

GLUT source code: How to Obtain the Sample Code

GLX specification: GLX: OpenGL Extension for the X Window System

OpenGL Programming Guide: How to Obtain the Sample Code

Fundamentals of Computer Aided Geometric Design: Prerequisites

Fundamentals of Three-Dimensional Computer Graphics: Texture

Mapping

Game of Life: Life in the Stencil Buffer

gamma correction: RGBA versus Color-Index Mode

Gardner, Martin: Life in the Stencil Buffer

geometric primitives: Describing Points, Lines, and Polygons; Overview

performance when specifying: OpenGL Performance Tips rendering pipeline stage: Primitive Assembly

geosciences:

use of texturing in applications: Automatic Texture-Coordinate Generation

giraffe: Color-Index Display Mode

GLU:

tessellation: Polygon Tessellation

glAccum(): The Accumulation Buffer

glAlphaFunc(): Alpha Test

glAreTexturesResident(): A Working Set of Resident Textures

glArrayElement(): Dereference a Single Array Element

legal between glBegin() and glEnd(): Restrictions on Using glBegin() and glEnd()

Glassner, Andrew S. : What You Should Know Before Reading This Guide

glBegin(): OpenGL Geometric Drawing Primitives; OpenGL Geometric Drawing Primitives; Tessellation Callback Routines restrictions: Restrictions on Using glBegin() and glEnd()

glBindTexture(): A Sample Program; Creating and Using Texture Objects

glBitmap(): Drawing the Bitmap; Bitmaps and Fonts feedback mode: The Feedback Array

fonts, used for: Defining and Using a Complete Font imaging pipeline operations: Imaging Pipeline

pixel-storage modes effect: Controlling Pixel-Storage Modes

glBlendFunc(): The Source and Destination Factors

glCallList(): Executing a Display List; Creating and Executing a Display List; An Example of Using a Display List

legal between glBegin() and glEnd(): Restrictions on Using glBegin() and glEnd()

glCallLists(): Executing Multiple Display Lists fonts, use for: Fonts and Display Lists

legal between glBegin() and glEnd(): Restrictions on Using glBegin() and glEnd()

sample program: Defining and Using a Complete Font

glClear(): Clearing the Window; Odds and Ends; Clearing Buffers; Clearing the Window

depth buffer, clearing the: A Hidden-Surface Removal Survival Kit

glClearAccum(): Clearing the Window; Clearing Buffers

glClearColor(): Clearing the Window; Clearing the Window; Clearing Buffers

glClearDepth(): Clearing Buffers; Clearing the Window

glClearIndex(): Clearing the Window; Specifying a Color in Color-Index Mode; Clearing Buffers

fog, use with: Fog in Color-Index Mode

glClearStencil(): Clearing Buffers; Clearing the Window

glClipPlane(): Additional Clipping Planes

glColor*(): Specifying a Color ; Specifying a Color in RGBA Mode legal between glBegin() and glEnd(): Restrictions on Using

glBegin() and glEnd()

glColorMask(): Clearing Buffers; Masking Buffers

glColorMaterial(): Changing Material Properties performance tips: OpenGL Performance Tips

glColorPointer(): Step 2: Specifying Data for the Arrays

glCopyPixels(): Copying Pixel Data within the Frame Buffer; Reading, Writing, and Copying Pixel Data

alternative uses: Alternative Uses for glDrawPixels() and glCopyPixels()

dithering, turn off: OpenGL Correctness Tips feedback mode: The Feedback Array

glReadBuffer() effect: Selecting Color Buffers for Writing and Reading

imaging pipeline operations: Imaging Pipeline pixel-transfer modes effect: Pixel-Transfer Operations

glCopyTexImage1D(): One-Dimensional Textures glReadBuffer() effect: Selecting Color Buffers for Writing and

Reading

pixel-transfer modes effect: Pixel-Transfer Operations

glCopyTexImage2D(): Specifying the Texture

glReadBuffer() effect: Selecting Color Buffers for Writing and Reading

pixel-transfer modes effect: Pixel-Transfer Operations

glCopyTexSubImage1D(): One-Dimensional Textures; One-Dimensional Textures

glReadBuffer() effect: Selecting Color Buffers for Writing and Reading

pixel-transfer modes effect: Pixel-Transfer Operations

glCopyTexSubImage2D(): Replacing All or Part of a Texture Image glReadBuffer() effect: Selecting Color Buffers for Writing and

Reading

pixel-transfer modes effect: Pixel-Transfer Operations

glCullFace(): Reversing and Culling Polygon Faces

glDeleteLists(): Fonts and Display Lists; Managing Display List Indices

glDeleteTextures(): Cleaning Up Texture Objects

glDepthFunc(): Depth Test

glDepthMask(): Masking Buffers

blending opaque and translucent objects: Three-Dimensional Blending with the Depth Buffer

glDepthRange(): The Transformed Depth Coordinate gluUnProject(), relationship to: Reversing or Mimicking

Transformations

glDisable(): Basic State Management; OpenGL as a State Machine

glDisableClientState(): Step 1: Enabling Arrays

glDrawArrays(): Dereference a Sequence of Array Elements

glDrawBuffer(): Writing Pixel Data from Processor Memory to Frame Buffer; Copying Pixel Data within the Frame

Buffer; Selecting Color Buffers for Writing and Reading

glDrawElements(): Dereference a List of Array Elements

glDrawPixels(): Drawing Depth-Buffered Images; Writing Pixel Data from Processor Memory to Frame Buffer; Reading, Writing, and Copying Pixel Data; Stencil Examples

alternative uses: Alternative Uses for glDrawPixels() and glCopyPixels()

feedback mode: The Feedback Array

pixel-storage modes effect: Controlling Pixel-Storage Modes pixel-transfer modes effect: Pixel-Transfer Operations

glEdgeFlag*(): Marking Polygon Boundary Edges

legal between glBegin() and glEnd(): Restrictions on Using glBegin() and glEnd()

glEdgeFlagPointer(): Step 2: Specifying Data for the Arrays

glEnable(): Basic State Management; Create, Position, and Enable One or More Light Sources

also see enabling: Reversing and Culling Polygon Faces

glEnableClientState(): Restrictions on Using glBegin() and glEnd(); Step 1: Enabling Arrays

glEnd(): Tessellation Callback Routines; OpenGL Geometric Drawing Primitives; OpenGL Geometric Drawing Primitives restrictions: Restrictions on Using glBegin() and glEnd()

glEndList(): An Example of Using a Display List; Naming and Creating a Display List; Creating and Executing a Display List

glEvalCoord*(): Defining and Evaluating a One-Dimensional Evaluator ; Defining and Evaluating a Two-Dimensional Evaluator

legal between glBegin() and glEnd(): Restrictions on Using glBegin() and glEnd()

used instead of glVertex*(): One-Dimensional Example: A Simple Bézier Curve, Evaluators

glEvalMesh*(): Defining Evenly Spaced Coordinate Values in One Dimension; Defining Evenly Spaced Coordinate Values in Two Dimensions

glEvalPoint*():

legal between glBegin() and glEnd(): Restrictions on Using glBegin() and glEnd()

glFeedbackBuffer(): Feedback glRenderMode(), use with: The Basic Steps

glFinish(): Forcing Completion of Drawing

glFlush(): Forcing Completion of Drawing; Forcing Completion of Drawing; OpenGL Correctness Tips

glFog*(): Fog Equations

glFrontFace(): Reversing and Culling Polygon Faces

glFrustum(): The Projection Transformation; Perspective Projection; Odds and Ends; Perspective Projection

glGenLists(): An Example of Using a Display List; Naming and Creating a Display List

fonts, use for: Fonts and Display Lists

glGenTextures(): Naming A Texture Object; A Sample Program

glGetBooleanv(): Basic State Management; OpenGL as a State Machine; OpenGL State Variables

double-buffering support, querying: Color Buffers stereo support, querying: Color Buffers

glGetClipPlane(): The Query Commands

glGetDoublev(): Basic State Management; OpenGL as a State Machine; OpenGL State Variables

glGetError(): The Query Commands; Error Handling; OpenGL as a State Machine

glGetFloatv(): OpenGL as a State Machine; Basic State Management; OpenGL State Variables

line width attributes, obtaining: Wide Lines point size attributes, obtaining: Point Details

glGetIntegerv(): OpenGL State Variables; Basic State Management; OpenGL as a State Machine

alpha test information, obtaining: Alpha Test attribute stack depth, obtaining: Attribute Groups

clipping planes, obtaining number of additional: Additional Clipping Planes

color resolution, obtaining: RGBA versus Color-Index Mode display list nesting limit, obtaining: Hierarchical Display Lists matrix stack depth, obtaining: The Modelview Matrix Stack maximum texture size, obtaining: Texture Proxy

name stack depth, obtaining: Creating the Name Stack pixel map information, obtaining: Pixel Mapping rendering mode, obtaining current: The Basic Steps stencil-related values, obtaining: Stencil Queries

glGetLight*(): The Query Commands; OpenGL as a State Machine

glGetMap*(): The Query Commands

glGetMaterial*(): The Query Commands

glGetPixelMap*(): The Query Commands

glGetPointerv(): OpenGL State Variables; Basic State Management; OpenGL as a State Machine

glGetPolygonStipple(): OpenGL as a State Machine; The Query Commands

glGetString(): The Query Commands; Which Version Am I Using?

glGetTexEnv*(): The Query Commands

glGetTexGen*(): The Query Commands

glGetTexImage(): The Query Commands

pixel-storage modes effect: Controlling Pixel-Storage Modes pixel-transfer modes effect: Pixel-Transfer Operations

glGetTexLevelParameter*(): Texture Proxy; The Query Commands

glGetTexParameter*(): The Query Commands

texture residency, obtaining: A Working Set of Resident Textures

glHint(): Antialiasing fog use: Using Fog

texture use: A Sample Program

glIndex*(): Specifying a Color in Color-Index Mode fog, use with: Fog in Color-Index Mode

legal between glBegin() and glEnd(): Restrictions on Using glBegin() and glEnd()

glIndexMask(): Clearing Buffers; Masking Buffers

glIndexPointer(): Step 2: Specifying Data for the Arrays

glInitNames(): Creating the Name Stack; Creating the Name Stack; The Basic Steps

glInterleavedArrays(): Interleaved Arrays

glIsEnabled(): OpenGL State Variables; Basic State Management; OpenGL as a State Machine

glIsList(): Managing Display List Indices

glIsTexture(): Naming A Texture Object

glLight*(): Creating Light Sources; Create, Position, and Enable One or More Light Sources; Creating Light Sources; Multiple Lights

glLightModel*(): Selecting a Lighting Model

glLineStipple(): Stippled Lines

glLineWidth(): Wide Lines

glListBase(): Executing Multiple Display Lists

fonts, use for: Fonts and Display Lists

sample program: Defining and Using a Complete Font

glLoadIdentity(): Odds and Ends; The Projection Transformation; General-Purpose Transformation Commands ; A Modeling Transformation Code Example

performance tips: OpenGL Performance Tips viewing transformations, use before: The Viewing

Transformation

glLoadMatrix*(): General-Purpose Transformation Commands ; General-Purpose Transformation Commands ; General-Purpose Transformation Commands ; Odds and Ends

glLoadName(): Creating the Name Stack; Creating the Name Stack

glLogicOp(): Logical Operations

glMap*(): Defining and Evaluating a Two-Dimensional Evaluator

;Defining and Evaluating a One-Dimensional Evaluator

;One-Dimensional Example: A Simple Bézier Curve

glMapGrid*(): Defining Evenly Spaced Coordinate Values in Two Dimensions; Defining Evenly Spaced Coordinate Values in One Dimension

glMaterial*(): Defining Material Properties; Define Material Properties for the Objects in the Scene

legal between glBegin() and glEnd(): Restrictions on Using glBegin() and glEnd()

performance tips: OpenGL Performance Tips

glMatrixMode(): The Projection Transformation; General-Purpose Transformation Commands

use with matrix stacks: Manipulating the Matrix Stacks

glMultMatrix*(): General-Purpose Transformation Commands

;Odds and Ends; General-Purpose Transformation Commands performance tips: OpenGL Performance Tips

glNewList(): Creating and Executing a Display List; An Example of Using a Display List; Naming and Creating a Display List

glNormal*(): Normal Vectors

legal between glBegin() and glEnd(): Restrictions on Using glBegin() and glEnd()

glNormalPointer(): Step 2: Specifying Data for the Arrays

glOrtho(): Odds and Ends; Orthographic Projection picking matrix use: Picking

glPassThrough(): Using Markers in Feedback Mode; Feedback

glPixelMap*(): Pixel Mapping

glPixelStore*(): Controlling Pixel-Storage Modes

cannot be stored in display lists: What's Stored in a Display List polygon stippling: Stippling Polygons

texture image data, effect on: Replacing All or Part of a Texture Image, One-Dimensional Textures, Specifying the

Texture, Replacing All or Part of a Texture Image, One-Dimensional Textures, Specifying the Texture

glPixelTransfer*(): Drawing Depth-Buffered Images; Pixel-Transfer Operations

texture image data, effect on: Specifying the

Texture, One-Dimensional Textures, Replacing All or Part of a Texture Image, Replacing All or Part of a Texture Image, Specifying the Texture, One-Dimensional Textures

glPixelZoom(): Magnifying, Reducing, or Flipping an Image; Cheap Image Transformation

glPointSize(): Point Details

glPolygonMode(): Polygons as Points, Outlines, or Solids antialiasing, effect on: Antialiasing Polygons

polygon offset, use with: Polygon Offset

glPolygonOffset(): Polygon Offset

glPolygonStipple(): Stippling Polygons

pixel-storage modes effect: Controlling Pixel-Storage Modes

glPopAttrib(): OpenGL as a State Machine; Managing State Variables with Display Lists; Attribute Groups; OpenGL State Variables

glPopClientAttrib(): OpenGL as a State Machine; Attribute Groups; OpenGL State Variables

glPopMatrix(): Manipulating the Matrix Stacks; Independently Moving the Light; Managing State Variables with Display Lists; Building an Articulated Robot Arm

restore orientation of coordinate systems: Building an Articulated Robot Arm

selection, use with: The Basic Steps

glPopName(): Creating the Name Stack; Creating the Name Stack

glPrioritizeTextures(): Texture Residence Strategies

glPushAttrib(): Attribute Groups; OpenGL as a State

Machine; Managing State Variables with Display Lists; OpenGL State Variables

glPushClientAttrib(): Attribute Groups; OpenGL State Variables; OpenGL as a State Machine

glPushMatrix(): Managing State Variables with Display

Lists; Manipulating the Matrix Stacks; Independently Moving the Light; Building an Articulated Robot Arm

save orientation of coordinate systems: Building an Articulated Robot Arm

selection, use with: The Basic Steps

glPushName(): Creating the Name Stack; The Basic Steps; Creating the Name Stack

glRasterPos*(): The Current Raster Position; Bitmaps and Fonts images, for positioning: Reading, Writing, and Copying Pixel

Data

selection hits, can cause: The Hit Record

glReadBuffer(): Selecting Color Buffers for Writing and

Reading; Copying Pixel Data within the Frame Buffer; Writing Pixel Data from Processor Memory to Frame Buffer

glReadPixels(): Reading Pixel Data from Frame Buffer to Processor Memory; Reading, Writing, and Copying Pixel Data

glReadBuffer() effect: Selecting Color Buffers for Writing and Reading

pixel-storage modes effect: Controlling Pixel-Storage Modes pixel-transfer modes effect: Pixel-Transfer Operations

glRect*(): Rectangles

glRenderMode(): The Basic Steps; The Hit Record; Feedback; The Basic Steps

glRotate*(): Building an Articulated Robot Arm

glRotate*(): Rotate; Odds and Ends; Building a Solar System performance tips: OpenGL Performance Tips

glScale*(): Building an Articulated Robot Arm

glScale*(): The Modeling Transformation; Odds and Ends; Scale performance tips: OpenGL Performance Tips

glScissor(): Scissor Test

glSelectBuffer(): The Basic Steps; The Basic Steps

display lists, cannot be stored in: What's Stored in a Display List

glShadeModel(): Specifying a Shading Model

glStencilFunc(): Stencil Test

glStencilMask(): Masking Buffers

glStencilOp(): Stencil Test

glTexCoord*(): A Sample Program; Assigning Texture Coordinates

legal between glBegin() and glEnd(): Restrictions on Using glBegin() and glEnd()

glTexCoordPointer(): Step 2: Specifying Data for the Arrays

glTexEnv*(): Texture Functions; A Sample Program

glTexGen*(): Automatic Texture-Coordinate Generation environment mapping: Environment Mapping

glTexImage1D(): One-Dimensional Textures

pixel-storage modes effect: Controlling Pixel-Storage Modes pixel-transfer modes effect: Pixel-Transfer Operations

glTexImage2D(): Specifying the Texture; A Sample Program pixel-storage modes effect: Controlling Pixel-Storage Modes pixel-transfer modes effect: Pixel-Transfer Operations specifying mipmaps: Multiple Levels of Detail

glTexParameter*(): A Sample Program; Repeating and Clamping Textures

specifying filtering methods: Filtering

glTexSubImage1D(): One-Dimensional Textures

pixel-storage modes effect: Controlling Pixel-Storage Modes pixel-transfer modes effect: Pixel-Transfer Operations

glTexSubImage2D(): Replacing All or Part of a Texture Image pixel-storage modes effect: Controlling Pixel-Storage Modes pixel-transfer modes effect: Pixel-Transfer Operations

glTranslate*(): Building a Solar System

glTranslate*(): Odds and Ends; Building an Articulated Robot Arm; Translate

performance tips: OpenGL Performance Tips

GLU: What Is OpenGL?; OpenGL-Related Libraries; Tessellators and Quadrics

drawing spheres, cylinders, and disks: Quadrics: Rendering Spheres, Cylinders, and Disks

error string description: Error Handling obsolete routines:

gluBeginPolygon(): Backward Compatibility gluEndPolygon(): Backward Compatibility gluNextContour(): Backward Compatibility

quadrics: Quadrics: Rendering Spheres, Cylinders, and Disks tessellation: Polygons

version numbers, obtaining: Utility Library Version

gluBeginCurve(): A Simple NURBS Example; Create a NURBS Curve or Surface

gluBeginSurface(): A Simple NURBS Example; Create a NURBS Curve or Surface

Соседние файлы в предмете Разработка игр