|
|
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
-
- 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
|
|
|