SGI Techpubs Library

IRIX 6.5  »  Books  »  Developer  »  
OpenGL Optimizer Programmer's Guide: An Open API for Large-Model Visualization
(document number: 007-2852-002 / published: 1998-06-09)    table of contents  |  additional info  |  download
find in page

Index

Decomposing csGeoSets Into Constituent Triangles: opGeoConverter
Shortening Representations of Surface Normal Data
Superquadric Curves: opSuperQuadCurve2d

action objects
callback
opActionInfo Holds Thread Information

action objects
MP Control Tasks and Related Classes

adding a scene graph loader
Creating a Scene Graph Loader

adding surfaces
Building Topology Incrementally: A Single-Traversal Build

adjacency information
Adjacency Information: opEdge

adjacent surfaces
tessellation
Creating and Maintaining Surface Topology

appearances,overriding
Node to Override Appearances: opHighlight

avoiding cracks
Creating and Maintaining Surface Topology

b-reps
Summary of Scene Graph Topology: opTopo

B-splines See NURBS
NURBS Overview

back-face culling
Back-Face Culling

batch processing
Scene Graph Tuning—opoptimize

Bezier curves
Features of NURBS and Bezier Curves

bilinear interpolation
Ruled Surfaces

bottlenecks
Sending Efficient Graphics Data to the Hardware

boundaries maintained by opTopo
Consistent Vertices at Boundaries: opBoundary

boundary index
Consistent Vertices at Boundaries: opBoundary

breadth-first traversal
Breadth-First Traversals: opBFTravAction
Breadth-First Traversal Sequence

breadth-first traversal
Breadth-First Traversal Sequence

building a csTriFanSet
Sets of Triangle Fans From Triangles: opTriFanSetBuilder

building geometry tools
Building New csGeoSets

building topology,example
opviewer Code

CAD applications
higher-order primitives
Higher-Order Geometric Primitives and Discrete Meshes
moving viewpoint
Spatial Curves

CAD data
NURBS
NURBS Overview

CAD datasets
The Challenge: Large Data Sets

callbacks
during traversal
Callbacks During a Traversal
in traversal object
Traversing a Large Scene Graph
post node
Depth-First Traversal Sequence
pre-node callbacks
Depth-First Traversal Sequence

callback return values
Controlling a Traversal With the Callback Return Value opTravDisp

circles
in space
Circles in Space
in the plane
Circles in the Plane

clearTessellation() method
Reading and Writing Topology Information: Using opoptimize

clock
restarting
opStopWatch

clock
stopping
opStopWatch

color bindings
Removing Color Bindings
removing, sample code
opoptimize Code

color change
Key Bindings for opPickDrawImpl

coloring triangle fans
Observing Trifans and Tristrips: opColorizeStrips()

coloring triangle strips
Observing Trifans and Tristrips: opColorizeStrips()

combining csGeoSets
Merging csGeoSets in a Scene Graph: opCombineGeoSets

combining GeoSets
Combine Small csGeoSets

command-line parser
Command-Line Parser: opArgParser

compiler error messages
Compiler Warning Messages

compiler warning messages
Compiler Warning Messages

compiling opoptimize
Compiling and Running opoptimize

composite curves
Curves on Surfaces: opCompositeCurve3d

condition variables
Implementing a Condition Variable: opBlockingCounter

cones
opCone

connected primitives
Creating OpenGL Connected Primitives
example
opoptimize Code

connecting surface patches
Collecting Connected Surfaces: opSolid

control hull, NURBS
Control Hull

control parameters for NURBS
NURBS Elements That Determine the Control Parameters

controlling coloring
Specifying Coloring of New csGeoSets: opColorGenerator

convert() function
Methods in opGeoSpatialize

converting file formats
Saving a Scene Graph to a File

converting file formats
Reading and Writing Topology Information: Using opoptimize

Coons patch
Coons Patches

coordinate mismatches
Overview of Topology Tasks

coordinating scene graph changes
Coordinating Threads That Change a Scene Graph: opTransactionMgr

Cosmo3D
csLOD node
Levels of Detail
file storing tools
Saving a Scene Graph to a File

Cosmo3D
functions
opTransaction
lighting effects
Efficient High-Quality Lighting Effects: Reflection Mapping
scene-graph
Pipeline Stages
vs. Optimizer vectors
Classes for Points

cracks
avoiding
Creating and Maintaining Surface Topology
possible reasongs
Overview of Topology Tasks

create level-of-detail
Creating LODs—mergeLODDemo

creating LOD nodes
Creating LODs—mergeLODDemo

creating tessellator
example
opviewer Code

creating topology data structures
opviewer Code

csAction class
Traversing a Scene Graph and Applying a csDispatch: opDispatchAction

.csb files
Reading and Writing Topology Information: Using opoptimize

csDispatch
Traversing a Scene Graph and Applying a csDispatch: opDispatchAction

csDispatch class
Traversing a Scene Graph and Applying a csDispatch: opDispatchAction

csDrawAction class
View-Frustum and Occlusion Cull Draw Traversal: opDrawAction

csGeoSet
combining
Combine Small csGeoSets

csGeoSet
combining
Class Declaration for opCombineGeoSets
decomposing
Overview of Low-Level Geometry Tools

csGeoSet
spatialization
Spatialization Control Parameters

csLOD class
Levels of Detail

csShape
spatialization
Spatializing a Single csShape: opTriSpatialize

csShape
creating
Initializing a Tessellator

csTriFanSet building
Sets of Triangle Fans From Triangles: opTriFanSetBuilder

csTriSet
building
Sets of Triangles From Individual Triangles: opTriSetBuilder

csTriStripSet
building
Sets of Triangle Strips From Triangles: opTriStripSetBuilder

cuboids
opCuboid

cull traverser
Effect of Spatialization on Cull Traversals

culling
and z-clipping
Occlusion Culling and Pipeline Load Balancing
toggling
Key Bindings for opOccDrawImpl

culling
back faces
Back-Face Culling
Setting Back-Face Culling
Setting Back-Face Culling
Setting Back-Face Culling
detail
Detail Culling
occlusion
Occlusion Culling
solving performance problems
Culling Takes Longer Than Rendering
view-frustum
View-Frustum Culling

culling partially visible objects
Occlusion Culling

culling scene graph
Culling Unneeded Objects From the Scene Graph

current-color test
Removing Color Bindings

cursor
Overview of Highlighting and Picking

curves
and trim loops
Defining Edges of a Parametric Surface: Trim Loops and Curves
composite
Curves on Surfaces: opCompositeCurve3d
discrete curves in space
Discrete Curves in Space
discrete curves in the plane
Discrete Curves in the Plane
Hermite spline
Hermite Spline Curves in Space
NURBS
Trimmed NURBS
NURBS curve
NURBS Surfaces
superquadric
Superquadrics in Space
tessellation
Tessellating Curves in Space
trim curve
Defining Edges of a Parametric Surface: Trim Loops and Curves
using splines
Hermite-Spline Curves in the Plane

curves
in space
Spatial Curves
in the plane
Planar Curves

cylinders
reflection map
Cylinder Map

cylinder map
viewing configuration
Cylinder Map

cylinders
opCylinder

database
spatializing
Spatialize to Facilitate View Frustum and Occlusion Culling

decimateGeoSet() function
Effects of Simplification

decomposing csGeoSets
Overview of Low-Level Geometry Tools

default drawing options for opViewer
opDefDrawImpl: Controlling Rendering for opViewer

defining key handler
opoptimize Code

deleting objects
Key Bindings for opPickDrawImpl

deleting traversal objects
Specifying Deletion of Traversal Object Storage: opActionDisp

depth-first traversal
Depth-First Traversals: opDFTravAction
Depth-First Traversal Sequence

depth-first traversal
Depth-First Traversal Sequence
illustrated
Depth-First Traversal Sequence

detail culling
Detail Culling

diabling current color test
Removing Color Bindings

discrete curves
in space
Discrete Curves in Space
in the plane
Discrete Curves in the Plane

discrete data sets, visualizing
Tessellating a Regular Mesh

discrete surfaces
Regular Meshes and Discrete Surfaces

display lists
Display Lists

distributing tasks to methods
Classes for Scheduling and Defining Tasks

drawing scene
example
opviewer Code
sample code
opoptimize Code

dvector class
opx: A Template Class for Dynamic Arrays of Contiguous Elements

dynamic arrays template
opx: A Template Class for Dynamic Arrays of Contiguous Elements

edges
defining
Defining Edges of a Parametric Surface: Trim Loops and Curves

efficient graphics data
Sending Efficient Graphics Data to the Hardware
avoiding mode switching
Avoiding OpenGL Mode Switching
connected primitives
Creating OpenGL Connected Primitives
display lists
Display Lists
removing color bindings
Removing Color Bindings
removing csAppearances
Removing csAppearance Effects: opCollapseAppearances
short surface normals
Shortening Representations of Surface Normal Data
vertex arrays
Vertex Arrays

environment mapping
Efficient High-Quality Lighting Effects: Reflection Mapping
See also reflection mapping
Efficient High-Quality Lighting Effects: Reflection Mapping

environment variables
Environment Variables to Set Before Compiling an Application

error messages
Compiler Warning Messages

error notification functions
Error Handling and Notification

error priority levels
Error Handling and Notification

errors,fatal
Error Handling and Notification

evaluation functions
Evaluation Function

evaluator functions
Mathematical Description of a Planar Curve

example use
opDisCurve3d
Example of Using opDisCurve3d and opHsplineCurve3d
opFrenetSweptSurface
Example of Using opDisCurve3d and opHsplineCurve3d
opHsplineCurve3
Example of Using opDisCurve3d and opHsplineCurve3d

execution dependencies
Implementing a Condition Variable: opBlockingCounter

fatal errors
Error Handling and Notification

file formats
conversions
Supported File Formats
Saving a Scene Graph to a File
conversions
Reading and Writing Topology Information: Using opoptimize

fill bottlenecks
Bottlenecks in the Pipeline

finite-precision coordinate mismatches
Overview of Topology Tasks

fork()DO NOT USE
Low-Level Multiprocess Tools

Frenet frame
opFrenetSweptSurface

functions
trigonometric
Trigonometric Functions

functions
polynomials
Polynomials
scalar
Classes for Scalar Functions
trigonometric
Trigonometric Functions

Gaussian reflection maps
Gaussian Map

geometric primitives
Geometric Primitives: The Base Class opRep and the Application repTest

geometric primitives
Higher-Order Geometric Primitives and Discrete Meshes

geometry tools
base class for building csGeoSetclass
Building New csGeoSets
controlling coloring csGeoSetclass
Specifying Coloring of New csGeoSets: opColorGenerator
csTriFanSet
Sets of Triangle Fans From Triangles: opTriFanSetBuilder
decomposing csGeosetreorganizing
Decomposing csGeoSets Into Constituent Triangles: opGeoConverter
low level
Manipulating Triangles and Rebuilding Renderable Objects
triangle sets
Sets of Triangles From Individual Triangles: opTriSetBuilder

geometry-building classes, hierarchy
Low-Level Tools Class Hierarchy

glColorMaterial function
Removing Color Bindings

granularity of spatialization
Granularity Trade-offs

graphics data, efficient
Sending Efficient Graphics Data to the Hardware

graphics pipeline
Sending Efficient Graphics Data to the Hardware
bottlenecks
Bottlenecks in the Pipeline
introduction
Pipeline Stages

graphing timing measurements
opPerfPlot

hedgehog plots
Visualizing Vector-Valued Functions

Hermite spline
Hermite-Spline Curves in the Plane

Hermite spline
curves in space
Hermite Spline Curves in Space
curves in the plane
Hermite-Spline Curves in the Plane
surfaces
Hermite-Spline Surfaces

higher-order geometric primitives
Geometric Primitives: The Base Class opRep and the Application repTest
Higher-Order Geometric Primitives and Discrete Meshes
class hierarchy
Geometric Primitives: The Base Class opRep and the Application repTest

highlighting objects
Node to Override Appearances: opHighlight
Interactive Highlighting and Manipulating
Key Bindings for opPickDrawImpl

host bottlenecks
Bottlenecks in the Pipeline

Hull parameterization
Indexing Knot Points and the Control Hull

improving performance
Troubleshooting

include files
opoptimize Code
example
opviewer Code

initializing OpenGL Optimizer
example
opviewer Code

initializing tessellator
Initializing a Tessellator

input pointers
Values Returned by Scene Graph Tools

interprocess dependencies
Making Processes Wait on a Task: opTaskBlock

interprocess dependencies
Managing Interprocess Dependencies
Interprocess Control Methods

iso-surfaces
opTessIsoAction

.iv files
Reading and Writing Topology Information: Using opoptimize

key handler
defining
opoptimize Code

keybindings for opDefDrawImpl
opDefDrawImpl Keybindings

keyboard commands, handling
opDefDrawImpl: Controlling Rendering for opViewer

keyboard control of rendering interaction
opDrawImpl Methods

keyHandler() in opDefDrawImpl
opDefDrawImpl: Controlling Rendering for opViewer

knot points
Hermite-Spline Curves in the Plane
Hermite spline
Hermite-Spline Curves in the Plane
NURBS
Knot Points

lattice simplification
Rossignac Simplification Algorithm: opLatticeSimplify

level-of-detail node
Use Level-of-Detail Nodes
Levels of Detail
inserting in a scene graph
Merging Graphs With Differing Levels of Detail: opMergeScenes
inserting in scene graph
LOD Insertion

levels of detail
Rendering Appropriate Levels of Detail

libraries required
Installing the OpenGL Optimizer and Supporting Software on UNIX Systems

lighting
effects
Efficient High-Quality Lighting Effects: Reflection Mapping
two-sided
Back-Face Culling

lines
in space
Lines in Space
in the plane
Lines in the Plane

load balancing
Occlusion Culling and Pipeline Load Balancing

loading a scene graph
Loading a Scene Graph

loading scene graph
example
opviewer Code

local environment for reflection mapping
Accurate Mapping: Local View of a Local Environment

local viewer for reflection mapping
Accurate Mapping: Local View of a Local Environment

locking processes
opLock

locks and opMutex
Mutual Exclusion Within a Code Block: opMutex

LOD
Rendering Higher-Order Primitives: Tessellators

LOD node
Levels of Detail
Use Level-of-Detail Nodes
inserting in scene graph
LOD Insertion

LOD node
creating
Creating LODs—mergeLODDemo

loops
Coons patch
Coons Patches
trim loop
Defining Edges of a Parametric Surface: Trim Loops and Curves
trim loops
Defining Edges of a Parametric Surface: Trim Loops and Curves

low-level geometry tools
Manipulating Triangles and Rebuilding Renderable Objects

low-level multiprocessing operations
MP Control Tasks and Related Classes

low-level mutliprocessing controls
Low-Level Multiprocess Tools

managing threads
Overview of the Thread Manager
MP Control Tasks and Related Classes

many threads
opMPFunAction: One Task, Many Processes

markRequests() method
Interprocess Control Methods

matrices
Matrix Class: opFrame

memory
reducing consumption
Methods in opGeoConverter

memory footprint
The OpenGL Optimizer Toolset
and reps
Features and Uses of Higher-Order Geometric Primitives

mergeLODDemo sample application
Creating LODs—mergeLODDemo

merging csGeoSets
Merging csGeoSets in a Scene Graph: opCombineGeoSets

merging scene graphs
Merging Graphs With Differing Levels of Detail: opMergeScenes

mesh tessellation
Sample Mesh Tessellation: opviz and opVizViewer

meshes
Regular Meshes and Discrete Surfaces

methods
interprocess control
Interprocess Control Methods
scheduling
Scheduling Methods

mode observation
Observing OpenGL Modes

mode switching
Avoiding OpenGL Mode Switching

Motif viewing tools
opXmDrawImpl: Controlling Rendering for opXmViewer
Interacting With a Rendered Object: opPickDrawImpl

multiple processes
and culling
When to Use Occlusion Culling

multiprocess merging of triangles
Merging Triangles Using Multiple Processors: opMPTriFanAndStrip

multiprocess tessellation
example
MP Tessellation

multiprocessing
interprocess dependencies
Managing Interprocess Dependencies
low-level operations
MP Control Tasks and Related Classes
save scene graph modifications
MP Control Tasks and Related Classes

multiprocessing
condition variables
Implementing a Condition Variable: opBlockingCounter
interprocess dependencies
Interprocess Control Methods
Managing Interprocess Dependencies
locks
opLock
low-level controls
Low-Level Multiprocess Tools
many tasks, many processes
opMPFunListAction: Many Tasks, Many Processes
one task, many processes
opMPFunAction: One Task, Many Processes
one task, one process
opFunctionAction: One Task, One Process
scene-graph changes
Coordinating Threads That Change a Scene Graph: opTransactionMgr
scheduling methods
Classes for Scheduling and Defining Tasks
Scheduling Methods
semaphores
opSemaphore
tasks
Defining Tasks for a Thread Manager
MP Control Tasks and Related Classes
tools
Managing Multiple Processors
waiting on a task
Making Processes Wait on a Task: opTaskBlock

mutual exclusion
Mutual Exclusion Within a Code Block: opMutex

nodes
LOD nodes
Levels of Detail

node information display
Displaying Node Information

non-manifold surface structure
Consistent Vertices at Boundaries: opBoundary

notification threshold
Error Handling and Notification

NURBS
and Bezier curves
Features of NURBS and Bezier Curves
control hull
Control Hull
knot points
Knot Points
surfaces
Trimmed NURBS
weights for control points
Weights for Control Points

NURBS
control hull indexing
Indexing Knot Points and the Control Hull
control parameters
NURBS Elements That Determine the Control Parameters
curves
Trimmed NURBS
curves in space
NURBS Curves in Space
curves in the plane
NURBS Curves in the Plane
equation for curve
Equation Used to Calculate a NURBS Curve
equation for surface
Equation Used to Calculate a NURBS Surface
introduction to
NURBS Overview
Optimizer classes
OpenGL Optimizer NURBS Classes
surfaces
NURBS Surfaces

occlusion culling
Occlusion Culling
load balancing
Occlusion Culling and Pipeline Load Balancing
rendering tool
View-Frustum and Occlusion Cull Draw Traversal: opDrawAction
Rendering With View-Frustum and Occlusion Culling: opOccDrawImpl
spatialization
Spatialization to Balance Pipeline Load When Occlusion Culling
tuning
Tuning Tips for Occlusion Culling

octrees
Spatialization Algorithm

OP_NOTIFY_LEVEL
Error Handling and Notification

opActionDisp and traversal object deletion
Specifying Deletion of Traversal Object Storage: opActionDisp

opActionInfo class
Methods in opBFTravAction
opActionInfo Holds Thread Information
Methods in opDFTravAction
declared
opActionInfo Holds Thread Information

opArgParser class
declared
Class Declaration for opArgParser
example
opviewer Code

opBackFaceCullScene() function
Setting Back-Face Culling

opBFTravAction class
Breadth-First Traversals: opBFTravAction
declared
Class Declaration for opBFTravAction

opBlockingCommit()
Coordinating Threads That Change a Scene Graph: opTransactionMgr
opCommit(), opBlockingCommit(), and opSync()
Coordinating Threads That Change a Scene Graph: opTransactionMgr

opBlockingCommit() function
opCommit(), opBlockingCommit(), and opSync()

opBlockingCounter
MP Control Tasks and Related Classes
declared
Implementing a Condition Variable: opBlockingCounter

opBoundary class
Consistent Vertices at Boundaries: opBoundary
Summary of Scene Graph Topology: opTopo
declared
Class Declaration for opBoundary
methods
Methods in opBoundary

opCircle2d class
declared
Circles in the Plane

opCircle3d class
Circles in Space

opColorGenerator class
declared
Class Declaration for opColorGenerator

opColorizeStrips() function
Observing Trifans and Tristrips: opColorizeStrips()

opCombineGeoSets class
declared
Class Declaration for opCombineGeoSets

opCommit() function
opCommit(), opBlockingCommit(), and opSync()
Coordinating Threads That Change a Scene Graph: opTransactionMgr
Coordinating Threads That Change a Scene Graph: opTransactionMgr

opCompositeCurve3d class
declared
Class Declaration for opCompositeCurve3d

opCompositeScalar class
Class Declaration for opScalar

opCone class
declared
Class Declaration for opCone

opCoons class
declared
Class Declaration for opCoons

opCosScalar class
Trigonometric Functions

opCuboid class
declared
Class Declaration for opCuboid

opCurve2d class
Adjacency Information: opEdge
Defining Edges of a Parametric Surface: Trim Loops and Curves
Planar Curves
declared
Class Declaration for opCurve2d

opCurve2d evaluator functions
Mathematical Description of a Planar Curve

opCurve3d class
Spatial Curves

opCylinder class
declared
Class Declaration for opCylinder

opDefDrawImpl
keybindings
opDefDrawImpl Keybindings

opDetailSimplifyclass
declared
Class Declaration for opDetailSimplify

opDFTravAction
Sample Traversal Function From the opoptimize Sample Application
declared
Class Declaration for opDFTravAction

opDFTravActioncode sample
Sample Traversal Function From the opoptimize Sample Application

opDisCurve2d class
declared
Class Declaration for opDisCurve2d

opDisCurve3d class
Consistent Vertices at Boundaries: opBoundary
Discrete Curves in Space
example
Example of Using opDisCurve3d and opHsplineCurve3d

opDisSurface class
Discrete Surface Base Class: opDisSurface

opDListCSGeometry() function
Display Lists

opDListScene() function
Display Lists

opDrawAction class
declared
Class Declaration for opDrawAction

opDrawImpl class
Interacting With a Rendered Object: opPickDrawImpl
declared
Class Declaration for opPickDrawImpl
methods
opDrawImpl Methods

opEdge class
opTessParaSurfaceAction
Consistent Vertices at Boundaries: opBoundary
Adjacency Information: opEdge
declared
Class Declaration for opEdge

OpenGL mode observation
Observing OpenGL Modes

OpenGL Optimizer
overview
OpenGL Optimizer Overview

OpenGL Optimizer Architecture
The OpenGL Optimizer Toolset

OpenGL Programming for the X Window System
Sending Efficient Graphics Data to the Hardware

opExit()
Calling opInit()

opFPDebug notification level
Error Handling and Notification

opFrame class
Class Declaration for opFrame

opFrenetSweptSurface
Details of Figure 11-2

opFrenetSweptSurface class
example
Making a Modulated Torus With opFrenetSweptSurface

opFrenetSweptSurface class
opFrenetSweptSurface
declared
Class Declaration for opFrenetSweptSurface
example
Example of Using opDisCurve3d and opHsplineCurve3d

opFunctionAction class
opFunctionAction: One Task, One Process

opFunctionAction class
opFunctionAction: One Task, One Process
Sample Mesh Tessellation: opviz and opVizViewer
Sample Mesh Tessellation: opviz and opVizViewer
MP Control Tasks and Related Classes
Defining Tasks for a Thread Manager
declared
Class Declaration for opFunctionAction

opGenLoader
main features
opGenLoader Methods

opGeoBuilder class
declared
Class Declaration for opGeoBuilder
hierarchy
Low-Level Tools Class Hierarchy

opGeoConverter
reducing memory consumption
Methods in opGeoConverter

opGeoConverter
Spatializing a Single csShape: opTriSpatialize
declared
Class Declaration for opGeoConverter

opGeoConverter class
Methods in opGeoSpatialize

opGeoConverter class
Decomposing csGeoSets Into Constituent Triangles: opGeoConverter

opGeoSpatialize class
Spatializing a Scene Graph: opGeoSpatialize
declared
Class Declaration for opGeoSpatialize

opGLArrayEXTCSGeoSet() function
Vertex Arrays

opGLArrayEXTScene() function
Vertex Arrays

opGLSpyNode
declared
Class Declaration for opGLSpyNode

opHighlight class
Node to Override Appearances: opHighlight
declared
Class Declaration for opHighlight

opHsplineCurve2d class
Class Declaration for opHsplineCurve2d
Hermite Spline Curves in Space

opHsplineCurve3d class
Hermite Spline Curves in Space
example
Example of Using opDisCurve3d and opHsplineCurve3d

opHsplineSurface
declared
Class Declaration for opHsplineSurface

opInfoNode class
declared
Class Declaration for opInfoNode

opInit() function
Calling opInit()
Calling opInit()

opKeyCallback
Controlling Rendering: opKeyCallback and opDrawImpl
Controlling Rendering: opKeyCallback and opDrawImpl
opDrawImpl Methods

opLatticeSimplify class
Rossignac Simplification Algorithm: opLatticeSimplify
Simplifier Classes
declared
Class Declaration for opLatticeSimplify

opLine2d class
declared
Class Declaration for opLine2d

opLine3d class
Lines in Space

opLock
MP Control Tasks and Related Classes
declared
Class Declaration for opLock

opMergeScenes class
Merging Graphs With Differing Levels of Detail: opMergeScenes
declared
Class Declaration for opMergeScenes

opMPFunAction class
opMPFunAction: One Task, Many Processes

opMPFunAction class
Defining Tasks for a Thread Manager
opMPFunAction: One Task, Many Processes
MP Control Tasks and Related Classes
declared
opMPFunAction: One Task, Many Processes

opMPFunListAction class
opMPFunListAction: Many Tasks, Many Processes

opMPFunListAction class
Defining Tasks for a Thread Manager
opMPFunListAction: Many Tasks, Many Processes
MP Control Tasks and Related Classes
declared
opMPFunListAction: Many Tasks, Many Processes

opMPTriFanAndStrip class
Merging Triangles Using Multiple Processors: opMPTriFanAndStrip

opMutex
Implementing a Condition Variable: opBlockingCounter
MP Control Tasks and Related Classes
Mutual Exclusion Within a Code Block: opMutex

opNotify()
Calling opInit()

opNotify() function
Error Handling and Notification

opNurbCurve2d class
OpenGL Optimizer NURBS Classes
NURBS Curves in the Plane
declared
Class Declaration for opNurbCurve2d

opNurbCurve3d class
NURBS Curves in Space
OpenGL Optimizer NURBS Classes

opNurbSurface class
OpenGL Optimizer NURBS Classes
NURBS Surfaces
declared
Class Declaration for opNurbSurface

opOccDrawImpl class
declared
Rendering With View-Frustum and Occlusion Culling: opOccDrawImpl
keybindings
Key Bindings for opOccDrawImpl

opoptimize sample application
include files
opoptimize Code

opoptimize sample application
Reduce the Polygon Count
Scene Graph Tuning With the opoptimize Application
Scene Graph Tuning—opoptimize
sample command lines
Compiling and Running opoptimize

opOrientedLine3d class
opOrientedLine3d

opParaSurface class
Base Class for Parametric Surfaces: opParaSurface
opTessParaSurfaceAction
Consistent Vertices at Boundaries: opBoundary
declared
Class Declaration for opParaSurface

opPerfPlot class
opPerfPlot

opPick class
Scene Graph Modification: opPick
example
Scene Graph Modification: opPick

opPickDrawImpl class
Key Bindings for opPickDrawImpl
key bindings
Key Bindings for opPickDrawImpl

opPieceWisePolyCurve2d class
declared
Class Declaration for opPieceWisePolyCurve

opPlane class
declared
Class Declaration for opPlane

opPolyScalar class
Polynomials
Trigonometric Functions

opPrintScene()
Printing a Scene Graph

opPrintScene() function
Combine Small csGeoSets

opReflMap class
Efficient High-Quality Lighting Effects: Reflection Mapping
declared
Class Declaration for opReflMap

opRegMesh class
Sample Mesh Tessellation: opviz and opVizViewer

opRegMesh class
Tessellating a Regular Mesh
Making a Discrete Surface and Other Mesh Objects: opRegMesh
declared
Class Declaration for opRegMesh

opRemoveColorBindings() function
Removing Color Bindings

opRep class
Geometric Primitives: The Base Class opRep and the Application repTest
moving from default position
Geometric Primitives: The Base Class opRep and the Application repTest

opRep class
declared
Class Declaration for opRep

opRuled class
declared
Class Declaration for opRuled

opScalar class
Classes for Scalar Functions

opSemaphore class
MP Control Tasks and Related Classes
Implementing a Condition Variable: opBlockingCounter
declared
Class Declaration for opSemaphore

opSetNotifyHandler() function
Error Handling and Notification

opSetNotifyLevel() function
Error Handling and Notification
Error Handling and Notification

opShortNormsScene() function
Shortening Representations of Surface Normal Data

opSimplify class
Simplifier Classes
declared
Class Declaration for opSimplify

opSinScalar<
Trigonometric Functions

opSolid class
methods
Class Declaration for opSolid

opSpatialize class
Overview of Low-Level Geometry Tools
declared
Class Declaration for opSpatialize

opSphere class
declared
Class Declaration for opSphere
example
opSphere Example

opSRASimplify class
Simplifier Classes

opStopWatch class
opStopWatch

opSuperQuad3d class
Superquadrics in Space

opSuperQuadCurve2d class
Superquadric Curves: opSuperQuadCurve2d
declared
Class Declaration for opSuperQuadCurve2d

opSweptSurface class
Swept Surfaces
declared
Class Declaration for opSweptSurface

opSync() function
opCommit(), opBlockingCommit(), and opSync()
Coordinating Threads That Change a Scene Graph: opTransactionMgr
opCommit(), opBlockingCommit(), and opSync()

opTaskBlock class
Making Processes Wait on a Task: opTaskBlock
Implementing a Condition Variable: opBlockingCounter
Making Processes Wait on a Task: opTaskBlock
MP Control Tasks and Related Classes
declared
Class Declaration for opTaskBlock

opTessCuboidAction class
declared
Class Declaration for opTessCuboidAction

opTessCurve3dAction class
declared
Class Declaration for opTessCurve3dAction

opTessellateAction class
declared
Class Declaration for opTessellateAction

opTessIsoAction class
Visualizing Scalar-Valued Functions
declared
Class Declaration for opTessIsoAction

opTessNurbSurfaceAction
opTessNurbSurfaceAction

opTessParaSurface class
example
Sample From repTest: Tessellating and Rendering a Sphere

opTessParaSurface class
opTessParaSurfaceAction

opTessParaSurfaceAction class
declared
Class Declaration for opTessParaSurfaceAction

opTessSliceAction class
opTessSliceAction
Visualizing Scalar-Valued Functions
declared
Class Declaration for opTessSliceAction

opTessVec2dAction class
opTessVec2dAction and opTessVec3dAction
Visualizing Vector-Valued Functions

opTessVec3dAction class
opTessVec2dAction and opTessVec3dAction

opTessVec3dAction class
Visualizing Vector-Valued Functions

opTessVecAction class
opTessVecAction
declared
Class Declaration for opTessVecAction
methods
Methods in opTessVecAction

opThreadManager class
Sample Mesh Tessellation: opviz and opVizViewer

opThreadMgr class
Overview of the Thread Manager
Class Declaration for opThreadMgr
MP Control Tasks and Related Classes
declared
Class Declaration for opThreadMgr
methods
Methods in opThreadMgr

optimizeDemo
Combine Small csGeoSets

Optimizer, overview
OpenGL Optimizer Overview

opTopo class
Summary of Scene Graph Topology: opTopo
Adjacency Information: opEdge
declared
Class Declaration for opTopo

opTorus class
declared
Class Declaration for opTorus

opTransaction class
opTransaction
declared
Class Declaration for opTransaction

opTransactionMgr class
MP Control Tasks and Related Classes
Coordinating Threads That Change a Scene Graph: opTransactionMgr
Coordinating Threads That Change a Scene Graph: opTransactionMgr
Coordinating Threads That Change a Scene Graph: opTransactionMgr
methods
Class Declaration for opTransactionMgr

opTravDisp and callback return value
Controlling a Traversal With the Callback Return Value opTravDisp

opTriFanAndStrip class
declared
Class Declaration for opTriFanAndStrip

opTriFanner class
declared
Class Declaration for opTriFanner

opTriFanSetBuilder class
Low-Level Tools Class Hierarchy
declared
Class Declaration for opTriFanSetBuilder

opTriSetBuilder
Low-Level Tools Class Hierarchy
declared
Class Declaration for opTriSetBuilder

opTriSpatialize class
declared
Class Declaration for opTriSpatialize

opTriStats class
Getting Statistics About a Scene Graph: opTriStats

opTriStatsDispatch
declared
Getting Statistics About Individual Elements: opTriStatsDispatch

opTriStripper class
declared
Class Declaration for opTriStripper

opTriStripSetBuilder class
Low-Level Tools Class Hierarchy
Methods in opTriStripSetBuilder

opVec2 class
Classes for Points
Classes for Points

opVec3 class
Classes for Points

opVec4 class
Classes for Points

opVersion() method
Calling opInit()

opviewer
opviewer Sample Application
Reduce the Polygon Count

opViewer class
Viewing Class: opViewer
drawing options, default
opDefDrawImpl: Controlling Rendering for opViewer
methods
opViewer Methods

opviewer sample application
opviewer Sample Application

opviz application
Sample Mesh Tessellation: opviz and opVizViewer
main loop
opviz Main Routine

opviz sample application
An opConstant opRegMesh<opReal>: Data for opviz

opviz sample application
Scientific Visualization

opVizViewer class
opVizViewer

opVizViewer class
Viewing Class: opViewer
Sample Mesh Tessellation: opviz and opVizViewer
opVizViewer

opxdemo sample application
X Version of opviewer

opXmDrawImpl class
Motif Version of opviewer
methods
opXmDrawImpl: Controlling Rendering for opXmViewer

opXmViewer
opXmDrawImpl: Controlling Rendering for opXmViewer
Interacting With a Rendered Object: opPickDrawImpl

opxmviewer sample application
Motif Version of opviewer

parameterization
spheres
opSphere

parameterization
cones
opCone
planes
opPlane
torus
opTorus

parametric circles in the plane
Circles in the Plane

parametric curves
in space
Spatial Curves

parametric lines in the plane
Lines in the Plane

parametric surfaces
Parametric Surfaces
stitching
Creating and Maintaining Surface Topology
tessallation
Tessellating Parametric Surfaces

parametric surfaces
Parametric Surfaces
base class
Base Class for Parametric Surfaces: opParaSurface
planes
opPlane

partially visible objects
culling
Occlusion Culling

performance
culling
Culling Takes Longer Than Rendering

performance
improving
Troubleshooting
indicators
Performance Indicators
picking
How Picking Can Accelerate Rendering Rates
spaztialization
Effect of Spatialization on Cull Traversals
view-frustum culling
View-Frustum Culling and Pipeline Load Balancing

pi
Pi

picking objects
Key Bindings for opPickDrawImpl
example
Scene Graph Modification: opPick

picking objects
Interactive Highlighting and Manipulating

pipeline
Sending Efficient Graphics Data to the Hardware

pipeline load balancing
Occlusion Culling and Pipeline Load Balancing

planar curves
Planar Curves

planar curves
mathematical description
Mathematical Description of a Planar Curve

planes
circles in the plane
Circles in the Plane
discrete curves
Discrete Curves in the Plane
lines in the plane
Lines in the Plane
NURBS curves
NURBS Curves in the Plane
superquadric curves in the plane
Superquadric Curves: opSuperQuadCurve2d

planes
opPlane

Plot3D data
Sample Mesh Tessellation: opviz and opVizViewer

pointers, input
Values Returned by Scene Graph Tools

points
Classes for Points

polygon count, reducing
Reduce the Polygon Count

polynomials
Polynomials

post-node callbacks
Depth-First Traversal Sequence

pre-node callbacks
Depth-First Traversal Sequence

primitives
higher-order geometric primitives
Geometric Primitives: The Base Class opRep and the Application repTest

primitives
orienting in reference frame
Matrix Class: opFrame

printing scene graph
Printing a Scene Graph

printing scene graph
opoptimize Code

priority for error messages
Error Handling and Notification

problems with tessallation
Tessellation Problems

processes
execution dependencies
Implementing a Condition Variable: opBlockingCounter

profile of swept surface
Swept Surfaces

reducing polygon count
Reduce the Polygon Count

reference frame, orienting primitive
Matrix Class: opFrame

reflection mapping
Efficient High-Quality Lighting Effects: Reflection Mapping
Reflection Mapping
cylinder map
Cylinder Map
Gaussian Map
Gaussian Map
local environment
Accurate Mapping: Local View of a Local Environment
local viewer
Accurate Mapping: Local View of a Local Environment
remote environment
Simple Mapping: Remote View of a Remote Environment
remote viewer
Simple Mapping: Remote View of a Remote Environment
simple
Simple Mapping: Remote View of a Remote Environment
sphere
Sphere Map
tool
Reflection-Mapping Class: opReflMap

remote environment for reflection mapping
Simple Mapping: Remote View of a Remote Environment

removing childless nodes, example
opoptimize Code

removing color binding
Removing Color Bindings

removing csAppearances
Removing csAppearance Effects: opCollapseAppearances

removing triangles, sample code
opoptimize Code

rendering higher-order reps
Rendering Higher Order Reps—repTest

rendering interaction keyboard control
opDrawImpl Methods

reps
and memory footprint
Features and Uses of Higher-Order Geometric Primitives

representations
Features and Uses of Higher-Order Geometric Primitives

reps
Features and Uses of Higher-Order Geometric Primitives
base class
Geometric Primitives: The Base Class opRep and the Application repTest
using effectively
Objects Required by Reps

repTest sample application
Geometric Primitives: The Base Class opRep and the Application repTest
opSphere Example
Rendering Higher Order Reps—repTest
Sample From repTest: Tessellating and Rendering a Sphere
Parametric Surfaces
Sample of a Trimmed opNurbSurface From repTest
opSphere Example
Tessellators for Varying Levels of Detail

required libraries
Installing the OpenGL Optimizer and Supporting Software on UNIX Systems

rescaling objects
sample code
opoptimize Code

return values of scene graph tools
Values Returned by Scene Graph Tools

ruled surfaces
Ruled Surfaces

run-time warning messages
Run-Time Warning Messages

run-time warning messages
Run-Time Warning Messages

running opoptimize
Compiling and Running opoptimize

sample applications
mergeLODDemo
Creating LODs—mergeLODDemo
opoptimize
Scene Graph Tuning—opoptimize
opviewer
opviewer Sample Application
opviz
Scientific Visualization
opxdemo
X Version of opviewer
opxmviewer
Motif Version of opviewer
repTest
Geometric Primitives: The Base Class opRep and the Application repTest
Sample of a Trimmed opNurbSurface From repTest
opSphere Example
Parametric Surfaces
Rendering Higher Order Reps—repTest
topoTest
Summary of Topology Building Strategies
Using Topology—topoTest
zebraFly
Cylinder Map
zebraFly
Reflection Mapping

sample applications
OpenGL Optimizer Sample Applications
opoptimize
Scene Graph Tuning With the opoptimize Application
opviewer
opviewer Sample Application
running
Command-Line Options and User Input

sample code
drawing scene
opoptimize Code
opDFTravAction
Sample Traversal Function From the opoptimize Sample Application
removing triangles
opoptimize Code
rescaling objects
opoptimize Code

sample code
mergeLODDemo
Merging Graphs With Differing Levels of Detail: opMergeScenes
opFrenetSweptSurface class
Making a Modulated Torus With opFrenetSweptSurface
opHighlight
Sample Use of opHighlight for Highlighting
opInfoNode
Example of Using an opInfoNode
opMutex
Mutual Exclusion Within a Code Block: opMutex
opTessParaSurface
Sample From repTest: Tessellating and Rendering a Sphere
opTriStats
Example of Using an opTriStats
opviz
Sample Mesh Tessellation: opviz and opVizViewer
An opConstant opRegMesh<opReal>: Data for opviz
opviz Main Routine
repTest
Sample of a Trimmed opNurbSurface From repTest
simplification traversal
Sample Traversal Function From the opoptimize Sample Application
tessellating an opRegMesh
Sample Mesh Tessellation: opviz and opVizViewer

scalar functions
Classes for Scalar Functions
see functions
Classes for Scalar Functions

scalars
defining
Classes for Scalar Functions

scene graph
coordinating changes
Coordinating Threads That Change a Scene Graph: opTransactionMgr
inserting LOD node
LOD Insertion
printing
opoptimize Code
simplifying
Use Level-of-Detail Nodes
spatialization
Effect of Spatialization on Cull Traversals
traversing
Traversing a Large Scene Graph

scene graph
culling
Culling Unneeded Objects From the Scene Graph
loading, sample code
opoptimize Code
modifying
Scene Graph Modification: opPick
printing
Printing a Scene Graph
simplification tools
Overview of Simplification Tools
statistics
Gathering Triangle Statistics

scene graph as a mutable object
The OpenGL Optimizer Toolset

scene graph files
loading
Loading a Scene Graph
writing
Saving a Scene Graph to a File

scene graph files
writing
Loading a Scene Graph
Saving a Scene Graph to a File

scene graph loader
example
opviewer Code

scene graph loader, adding
Creating a Scene Graph Loader

scene graph tool return values
Values Returned by Scene Graph Tools

scene graph topology tools
Summary of Scene Graph Topology: opTopo

scene graph tuning
Scene Graph Tuning With the opoptimize Application

scheduling methods
Scheduling Methods

scientific visualization
Tessellating a Regular Mesh
Scientific Visualization
opVizViewer
opVizViewer

semaphores
opSemaphore
MP Control Tasks and Related Classes

shared boundaries, trim curve
Consistent Vertices at Boundaries: opBoundary

short normals
Shortening Representations of Surface Normal Data

short surface normals
Shortening Representations of Surface Normal Data

simplification
errors
Simplification Errors

simplification algorithm
lattice simplification
Rossignac Simplification Algorithm: opLatticeSimplify

simplifier
evaluation function
Evaluation Function

simplifier
opSimplify: Base Class for Adding Level-of-Detail Nodes

simplifying all csGeoSets in a graph
Sample Traversal Function From the opoptimize Sample Application

simplifying scene graph
Use Level-of-Detail Nodes

slow tessalation
Slow Processing

solids
forming with surface patches
Collecting Connected Surfaces: opSolid

solids
Collecting Connected Surfaces: opSolid

spatial curves
Spatial Curves

spatialization
granularity
Granularity Trade-offs

spatialization
Spatialization Tool: opSpatialize
Effect of Spatialization on Cull Traversals
algorithm
Spatialization Algorithm
and octrees
Spatialization Algorithm
and view-frustum culling
View-Frustum Culling and Pipeline Load Balancing
combining csGeoSets
Merging csGeoSets in a Scene Graph: opCombineGeoSets
component procedures
Classes for Component Procedures of Spatialization
in example program
opoptimize Code
occlusion culling
Spatialization to Balance Pipeline Load When Occlusion Culling
of a csShape
Spatializing a Single csShape: opTriSpatialize
of scene graph nodes
Spatializing a Scene Graph: opGeoSpatialize
tools
Spatialization Classes

spatializing database
Spatialize to Facilitate View Frustum and Occlusion Culling

specifying surface cross sections
Planar Curves

specifying tasks for thread manager
Defining Tasks for a Thread Manager

spheres
reflection map
Sphere Map

spheres
opSphere

splines
Hermite spline
Hermite-Spline Surfaces

splines
Hermite-Spline Curves in the Plane

sproc()
Low-Level Multiprocess Tools

sproc() DO NOT USE
Low-Level Multiprocess Tools

statistical data
Gathering Triangle Statistics

stitching surfaces
Creating and Maintaining Surface Topology

superquadric curves
in space
Superquadrics in Space
in the plane
Superquadric Curves: opSuperQuadCurve2d

surfaces
adjacency information
Adjacency Information: opEdge
Coons patch
Coons Patches
cubes
opCuboid
defining edges
Defining Edges of a Parametric Surface: Trim Loops and Curves
Hermite spline
Hermite-Spline Surfaces
non-manifold
Consistent Vertices at Boundaries: opBoundary
NURBS
Trimmed NURBS
NURBS curve
NURBS Surfaces
ruled surface
Ruled Surfaces
specifying cross sections
Planar Curves
swept surfaces
Swept Surfaces

surface contact information
Creating and Maintaining Surface Topology

surface edges
Adjacency Information: opEdge

surface normals
shortening representation
Shortening Representations of Surface Normal Data

surfaces
adding
Building Topology Incrementally: A Single-Traversal Build
parametric
Parametric Surfaces

swept surfaces
specifying cross sections
Planar Curves

swept surfaces
Swept Surfaces
Frenet frame
opFrenetSweptSurface

tasks
defining for thread manager
Defining Tasks for a Thread Manager
many tasks, many threads
opMPFunListAction: Many Tasks, Many Processes
one task, many threads
opMPFunAction: One Task, Many Processes
one task, one thread
opFunctionAction: One Task, One Process

tessalation
illustration
Tessellators for Varying Levels of Detail

tessellation
creating csShape node
Initializing a Tessellator
iso-surfaces
opTessIsoAction
meshes (sample code)
Sample Mesh Tessellation: opviz and opVizViewer
multiprocess, example
MP Tessellation

tessellation
adjacent surfaces
Creating and Maintaining Surface Topology
and reflection mapping
Simple Mapping: Remote View of a Remote Environment
base class
Base Class opTessellateAction
consistent
Summary of Scene Graph Topology: opTopo
controlling cracks
Tessellators and Topology: Managing Cracks
curves
Tessellating Curves in Space
deleting data
Reading and Writing Topology Information: Using opoptimize
meshes
Tessellating a Regular Mesh
NURBS surfaces
opTessNurbSurfaceAction
opCuboid class
Tessellating a Cuboid: opTessCuboidAction
parametric surfaces
Tessellating Parametric Surfaces
problems
Tessellation Problems
too slow
Slow Processing
using several tessellators
Tessellating a Scene Graph With Several Tessellators

tessellator
example
opviewer Code

tessellator
creating, sample code
opoptimize Code
definition
Rendering Higher-Order Primitives: Tessellators
initializing
Initializing a Tessellator

threads
locking
opLock
many tasks, many threads
opMPFunListAction: Many Tasks, Many Processes
one task
opMPFunAction: One Task, Many Processes
one task, one thread
opFunctionAction: One Task, One Process
waiting for task completion
Making Processes Wait on a Task: opTaskBlock

thread manager
defining tasks
Defining Tasks for a Thread Manager

thread management
MP Control Tasks and Related Classes
Overview of the Thread Manager

timing measurements
graphing
opPerfPlot

toggling culling
Key Bindings for opOccDrawImpl

topology
Using Topology—topoTest
adding to file
Reading and Writing Topology Information: Using opoptimize
Reading and Writing Topology Information: Using opoptimize
building, example code
opoptimize Code
information, reading and writing
Reading and Writing Topology Information: Using opoptimize
sample code
opoptimize Code
solids
Collecting Connected Surfaces: opSolid
tools
Summary of Scene Graph Topology: opTopo

topology data structures
creating
opviewer Code

topology-building
from list of surfaces
Building Topology From a List of Surfaces
general tasks
Overview of Topology Tasks
imported surfaces
Building Topology “by Hand”: Imported Surfaces
strategies
Building Topology: Computing and Using Connectivity Information
summary
Summary of Topology Building Strategies
two traversals
Building Topology From All Scene Graph Surfaces: A Two-Traversal Build

topoTest sample application
Using Topology—topoTest
Summary of Topology Building Strategies

tori
opTorus

transaction manager
submitting Cosmo3D functions
opTransaction

transfer bottleneck
Sending Efficient Graphics Data to the Hardware

transform bottlenecks
Bottlenecks in the Pipeline

traversals
breadth first
Breadth-First Traversal Sequence
callbacks
Callbacks During a Traversal
two traversal topology
Building Topology From All Scene Graph Surfaces: A Two-Traversal Build

traversal objects
Traversing a Large Scene Graph
deleting
Specifying Deletion of Traversal Object Storage: opActionDisp

traversals
applying a csDispatch
Traversing a Scene Graph and Applying a csDispatch: opDispatchAction
breadth first
Breadth-First Traversal Sequence
Breadth-First Traversals: opBFTravAction
callbacks
Traversals and Callbacks: General Features
controls
Callbacks During a Traversal
depth first
Depth-First Traversal Sequence
Depth-First Traversals: opDFTravAction
post-node callbacks
Depth-First Traversal Sequence
pre-node callbacks
Depth-First Traversal Sequence
sample code
Sample Traversal Function From the opoptimize Sample Application

traversing large scene graphs
Traversing a Large Scene Graph

triangle fans
Creating OpenGL Connected Primitives
attribute sharing
How OpenGL Optimizer Manages Attributes of Shared Vertices
coloring
Observing Trifans and Tristrips: opColorizeStrips()
construction
How OpenGL Optimizer Constructs Trifans and Tristrips

triangle strips
Creating OpenGL Connected Primitives
attribute sharing
How OpenGL Optimizer Manages Attributes of Shared Vertices
coloring
Observing Trifans and Tristrips: opColorizeStrips()
construction
How OpenGL Optimizer Constructs Trifans and Tristrips
tuning
Tuning Triangle Strips: Fixing Tristrips that are too Short

triangles
merging into strips
Merging Triangles Into Strips: opTriStripper

trigonometric functions
Trigonometric Functions
Trigonometric Functions

trim curve
Planar Curves
Consistent Vertices at Boundaries: opBoundary
Defining Edges of a Parametric Surface: Trim Loops and Curves
boundary index
Consistent Vertices at Boundaries: opBoundary

trim loop
Defining Edges of a Parametric Surface: Trim Loops and Curves

trim loops and curves
Defining Edges of a Parametric Surface: Trim Loops and Curves

troubleshooting
Troubleshooting

tuning occlusion culling
Tuning Tips for Occlusion Culling

tuning scene graph data
Tuning the Scene Graph Database

two traversal topology
Building Topology From All Scene Graph Surfaces: A Two-Traversal Build

two-sided lighting
Back-Face Culling

two-sided materials
Back-Face Culling

updateViewInfo() function
Reflection-Mapping Class: opReflMap

utilities
Utilities

vectors
Classes for Points
dynamic array of arbitrary objects
opx: A Template Class for Dynamic Arrays of Contiguous Elements

version number string
Calling opInit()

vertex arrays
Vertex Arrays

view-frustum culling
and spatialization
View-Frustum Culling and Pipeline Load Balancing

view-frustum culling
View-Frustum Culling
rendering tool
Rendering With View-Frustum and Occlusion Culling: opOccDrawImpl
View-Frustum and Occlusion Cull Draw Traversal: opDrawAction
when to use
When to Use View-Frustum Culling

visitor behavioral pattern
Traversing a Scene Graph and Applying a csDispatch: opDispatchAction

visualizing CAD datasets
The Challenge: Large Data Sets

visualizing discrete data sets
Tessellating a Regular Mesh

waitForRequests() methods
Interprocess Control Methods

warning messages
compiler
Compiler Warning Messages
run time
Run-Time Warning Messages

weights for NURBS control points
Weights for Control Points

winged data structures
Summary of Scene Graph Topology: opTopo

writing a scene graph file
Saving a Scene Graph to a File

z-clipping
and culling
Occlusion Culling and Pipeline Load Balancing

zebraFly sample application
Reflection Mapping
Cylinder Map

OpenGL Optimizer Programmer's Guide: An Open API for Large-Model Visualization
(document number: 007-2852-002 / published: 1998-06-09)    table of contents  |  additional info  |  download

    Front Matter
    About This Guide
    Part I. Getting Started
    Part II. High-Level Strategic Tools for Fast Rendering
    Part III. Specific Tools for Fast Rendering
    Part IV. Managing and Rendering Higher-Order Geometric Primitives
    Part V. Traversers, Low-Level Geometry Processing, and Multiprocessing
    Part VI. Utilities and Troubleshooting
    Part VII. Appendices
    Glossary
    Index


home/search | what's new | help