|
|
IRIX 6.5 » Books » Developer »
OpenGL on Silicon Graphics Systems
(document number: 007-2392-003 / published: 2005-03-31)
table of contents | additional info | download find in page
- 3D texture extension
- EXT_texture3D—The 3D Texture Extension
- mipmapping
- Using 3D Textures
- pixel storage modes
- Using 3D Textures
- 4Dwm
- Using OpenGL with the X Window System
- 60-Hz monitor
- How Frame Rate Determines Animation Speed
- ABGR extension
- EXT_abgr—The ABGR Extension
- ABI
- CPU Tuning: Basics
- CPU Tuning: Basics
- ABS instruction
- Fragment and Vertex Program Instructions
- accumulated multisampling
- Accumulating Multisampled Images
- actions and translations
- Background Information
- Using Actions and Translations
- Using Actions and Translations
- ADD instruction
- Fragment and Vertex Program Instructions
- adding callbacks
- Using Drawing-Area Widget Callbacks
- advanced multisampling options
- Using Advanced Multisampling Options
- AGP interface
- Differences Between Onyx4 and Silicon Graphics Prism Systems
- aliasing, vertex attributes
- Attribute Aliasing
- AllocAll
- Creating a Colormap and a Window
- AllocNone
- Creating a Colormap and a Window
- alpha blending
- Using Expensive Per-Fragment Operations Efficiently
- alpha component
- representing complex geometry
- Advanced Transform-Limited Tuning Techniques
- alpha value used as multisample mask
- Using Advanced Multisampling Options
- analog monitors
- Configuring Monitor Types
- ancillary buffers
- GLX and Overloaded Visuals
- Less-Rigid Similarity Requirements When Matching Context and Drawable
- PBuffers and Pixmaps
- Creating a Pbuffer
- animations
- Using Animations
- avoiding flickering
- Using Animations
- benchmarking
- Achieving Accurate Timing Measurements
- clear operations
- How Frame Rate Determines Animation Speed
- controlling with workprocs
- Controlling an Animation With Workprocs
- debugging
- Animation Problems
- double buffering
- Tuning Animation
- frame rate
- How Frame Rate Determines Animation Speed
- glXSwapBuffers
- Optimizing Frame Rate Performance
- optimizing frame rates
- Optimizing Frame Rate Performance
- speed
- How Frame Rate Determines Animation Speed
- swapping buffers
- Swapping Buffers
- tuning
- Tuning Animation
- anisotropic texture filtering
- SGIS_filter4_parameters—The Filter4 Parameters Extension
- SGIS_texture_filter4—The Texture Filter4 Extensions
- anisotropic texturing
- Why Use Anisotropic Texturing?
- ANSI C
- prototyping subroutines
- Examples for Optimizing Program Structure
- See also compiling.
- Examples for Optimizing Program Structure
- antialiasing
- When to Use Multisampling
- lines
- Multisampled Lines
- multisampling
- The Multisample Extension
- app-defaults file
- Setting Up Fallback Resources
- Choosing the Visual for the Drawing-Area Widget
- Using the Input Callback
- application binary interface (ABI)
- CPU Tuning: Basics
- CPU Tuning: Basics
- ARB extensions
- Extensions to OpenGL
- ARB_depth_texture extension
- The Shadow Extensions
- ARB_fragment_program extension
- Vertex and Fragment Program Extensions
- ARB_multisample extension
- The Multisample Extension
- ARB_point_parameters extension
- The Point Parameters Extension
- ARB_shadow extension
- The Shadow Extensions
- ARB_shadow_ambient extension
- The Shadow Extensions
- ARB_vertex_buffer_object extension
- ARB_vertex_buffer_object—The Vertex Buffer Object Extension
- ARB_vertex_program extension
- Vertex and Fragment Program Extensions
- ARB_window_pos extension
- ARB_window_pos—The Window-Space Raster Position Extension
- ARL instruction
- Vertex Program Instructions
- arrays, traversal
- Examples for Optimizing Data Structures for Drawing
- assembly code
- Using Specialized Drawing Subroutines and
Macros
- Examining Assembly Code
- Athena widget set
- Widgets and the Xt Library
- ATI_draw_buffers extension
- ATI_draw_buffers—The Multiple Draw Buffers Extension
- ATI_element_array extension
- The Vertex Array Object Extensions (Legacy)
- ATI_fragment_shader extensions
- The Legacy Vertex and Fragment Program Extensions
- ATI_map_object_buffer extension
- The Vertex Array Object Extensions (Legacy)
- ATI_separate_stencil extension
- ATI_separate_stencil—The Separate Stencil Extension
- ATI_texture_env_combine3 extension
- ATI_texture_env_combine3—New Texture Combiner Operations Extension
- ATI_texture_float extension
- ATI_texture_float—The Floating Point Texture Extension
- ATI_texture_mirror_once extension
- ATI_texture_mirror_once—The Texture Mirroring Extension
- ATI_vertex_array_object extension
- The Vertex Array Object Extensions (Legacy)
- ATI_vertex_attrib_array_object extension
- The Vertex Array Object Extensions (Legacy)
- attribute aliasing
- Attribute Aliasing
- attributes
- of drawing-area widget
- Choosing the Visual for the Drawing-Area Widget
- of widgets
- Setting Up Fallback Resources
- backdrop
- Mixing Computation With Graphics
- backface removal
- Using Backface/Frontface Removal
- Using Backface/Frontface Removal
- BadAlloc X protocol error
- Overlay Troubleshooting
- Creating a Pbuffer
- BadMatch X protocol error
- Inheritance Issues
- Creating a Colormap and a Window
- Creating a Pbuffer
- Creating and Using Pixmaps
- Possible Match Errors
- Possible Match Errors
- benchmarking
- Taking Timing Measurements
- and glFinish()
- Achieving Accurate Timing Measurements
- background processes
- Achieving Accurate Timing Measurements
- basics
- Benchmarking Basics
- clock resolution
- Achieving Accurate Timing Measurements
- example program
- Benchmarks
- instruments extension
- SGIX_instruments—The Instruments Extension
- libraries
- Libraries for Benchmarking
- loops
- Achieving Accurate Timing Measurements
- static frames
- Achieving Accurate Timing Measurements
- billboards
- Modeling to the Graphics Pipeline
- sprite extension
- SGIX_sprite—The Sprite Extension
- binding context to window
- Binding the Context to the Window
- bitmap fonts
- Using Fonts and Strings
- BlackPixel() color macro
- Color Variation Across Colormaps
- blank window
- Blank Window
- blend subtract extension
- Blend Subtract Extension
- blending
- and multisampling
- Using Advanced Multisampling Options
- constant color
- Constant Color Blending Extension
- extensions
- Blending Extensions
- See also minmax blending extension, logical operator blending, constant color blending, alpha blending.
- Minmax Blending Extension
- blending factors
- Using Constant Colors for Blending
- Using Constant Colors for Blending
- block counting
- Measuring Cache-Miss and Page-Fault Overhead
- border clamping
- SGIS_texture_edge/border_clamp—Texture Clamp Extensions
- border pixel
- Creating a Colormap and a Window
- bottlenecks
- CPU
- Optimizing the Data Organization
- definition
- About Pipeline Tuning
- finding
- Isolating Bottlenecks in Your Application: Overview
- geometry subsystem
- Isolating Bottlenecks in Your Application: Overview
- raster subsystem
- Isolating Bottlenecks in Your Application: Overview
- See also optimizing.
- About Pipeline Tuning
- tuning
- About Pipeline Tuning
- buffer clobber events
- Rendering to a Pbuffer
- Directing the Buffer Clobber Event
- Directing the Buffer Clobber Event
- buffer swaps, synchronizing
- SGIX_swap_group—The Swap Group Extension
- buffers
- accessed by loops
- Examples for Optimizing Program Structure
- accumulation buffer for multisampling
- Accumulating Multisampled Images
- avoiding simultaneous traversal
- Minimizing Cache Misses
- instrument extension
- Specifying the Buffer
- See also ancillary buffers
- Accumulating Multisampled Images
- swapping
- Swapping Buffers
- synchronizing swaps
- SGIX_swap_group—The Swap Group Extension
- bump mapping
- Why Use Texture Combiners?
- cache
- definition
- Memory Organization
- determining size
- Minimizing Cache Misses
- immediate mode drawing
- Optimizing the Data Organization
- minimizing misses
- Minimizing Cache Misses
- miss
- Optimizing the Data Organization
- Memory Organization
- calculating expected performance
- Benchmarking Basics
- callbacks
- adding
- Using Drawing-Area Widget Callbacks
- and current context
- Using Drawing-Area Widget Callbacks
- drawing-area widget
- Using Drawing-Area Widget Callbacks
- Using Drawing-Area Widget Callbacks
- expose
- Using Drawing-Area Widget Callbacks
- Creating Overlays
- expose()
- Mapping the Window
- for NURBS object
- Using the NURBS Tessellator Extension
- ginit() callback
- Creating the Widgets
- in overlay
- Creating Overlays
- init
- Using Drawing-Area Widget Callbacks
- init()
- Mapping the Window
- input
- Using Drawing-Area Widget Callbacks
- Using Drawing-Area Widget Callbacks
- Creating Overlays
- resize
- Using Drawing-Area Widget Callbacks
- Using Drawing-Area Widget Callbacks
- Creating Overlays
- CASE tools
- Debugging Your Program
- CASEVision/Workshop Debugger
- ogldebug Overview
- cc command
- Examining Assembly Code
- character strings
- Using Fonts and Strings
- checking for extensions
- How to Check for OpenGL Extension Availability
- choosing colormaps
- Choosing Which Colormap to Use
- choosing visuals
- Selecting a Visual
- clamping
- border clamping
- SGIS_texture_edge/border_clamp—Texture Clamp Extensions
- edge clamping
- SGIS_texture_edge/border_clamp—Texture Clamp Extensions
- clear
- for debugging
- Blank Window
- performance tuning
- Mixing Computation With Graphics
- clearing bitplanes
- Using Clear Operations
- clip region
- Clipmap Overview
- clip volumes
- EXT_clip_volume_hint—The Clip Volume Hint Extension
- clipmap extension
- SGIX_clipmap—The Clipmap Extension
- clipmaps
- center
- Clipmap Textures and Plain Textures
- clipped level
- Why Do the Clipmap Constraints Work?
- component diagram
- Clipmap Overview
- how to set up stack
- Setting Up the Clipmap Stack
- invalid borders
- Invalid Borders
- nonclipped level
- Why Do the Clipmap Constraints Work?
- tiles
- Moving the Clip Center
- toroidal loading
- Toroidal Loading
- updating stacks
- Updating the Clipmap Stack
- virtual
- Virtual Clipmaps
- clipped level
- Why Do the Clipmap Constraints Work?
- clipping
- debugging
- Blank Window
- clock resolution
- Achieving Accurate Timing Measurements
- CMP instruction
- Fragment Program Instructions
- color blending extension
- Constant Color Blending Extension
- color buffer clear
- influence on performance
- Benchmarking Basics
- with depth buffer clear
- Using Clear Operations
- color lookup tables
- pixel texture
- SGIX_pixel_texture—The Pixel Texture Extension
- color macros
- Color Variation Across Colormaps
- color matrix
- and color mask
- Tuning the Imaging Pipeline
- and identity matrix
- Tuning the Imaging Pipeline
- extension
- SGI_color_matrix—The Color Matrix Extension
- color table extension
- SGI_color_table—The Color Table Extension
- and copy texture
- Using Framebuffer Image Data for Color Tables
- color-index mode
- Background Information About Colormaps
- colormaps
- Color Variation Across Colormaps
- and drawing-area widgets
- X Window Colormaps
- and overlays
- Overlay Troubleshooting
- choosing
- Choosing Which Colormap to Use
- creating
- Creating a Colormap and a Window
- default
- Color Variation Across Colormaps
- definition
- X Window Colormaps
- Background Information About Colormaps
- flashing
- Running OpenGL Applications Using a Single Visual
- Multiple Colormap Issues
- installing
- Installing the Colormap
- multiple
- Multiple Colormap Issues
- retrieving default
- Multiple Colormap Issues
- transparent cell
- Introduction to Overlays
- Xlib
- Colormap Example
- compiling
- display lists
- Immediate Mode Drawing Versus Display Lists and Vertex Buffer Objects
- CPU Tuning: Display Lists
- -float option
- CPU Tuning: Basics
- -g option
- CPU Tuning: Basics
- -mips3, -mips4
- CPU Tuning: Basics
- -O2 option
- CPU Tuning: Basics
- optimizing
- CPU Tuning: Basics
- complex structures
- Immediate Mode Drawing Versus Display Lists and Vertex Buffer Objects
- compressed texture formats
- EXT_texture_compression_s3tc—The S3 Compressed Texture Format Extension
- concave polygons, optimizing
- Using Peak-Performance Primitives for Drawing
- conditional statements
- Examples for Optimizing Program Structure
- configuration file for ogldebug
- Using a Configuration File
- constant color blending extension
- Constant Color Blending Extension
- blending factors
- Using Constant Colors for Blending
- container widgets
- Creating the Widgets
- contexts
- and visuals
- Less-Rigid Similarity Requirements When Matching Context and Drawable
- binding to window
- Binding the Context to the Window
- created with GLXFBConfig
- Rendering to a Pbuffer
- current
- Rendering Contexts
- retrieving current display
- Retrieving Display and Context Information
- See also rendering contexts
- Creating a Rendering Context
- convolution extension
- EXT_convolution—The Convolution Extension
- and texture images
- Separable and General Convolution Filters
- border mode
- Retrieving Convolution State Parameters
- example
- Performing Convolution
- filter bias factors
- Retrieving Convolution State Parameters
- filter image height
- Retrieving Convolution State Parameters
- filter image width
- Retrieving Convolution State Parameters
- Retrieving Convolution State Parameters
- filter scale factors
- Retrieving Convolution State Parameters
- Retrieving Convolution State Parameters
- maximum filter image height
- Retrieving Convolution State Parameters
- maximum filter image width
- Retrieving Convolution State Parameters
- Retrieving Convolution State Parameters
- separable filter
- Separable and General Convolution Filters
- convolution kernels
- Performing Convolution
- coordinate system
- X Window System Problems
- COS instruction
- Fragment Program Instructions
- CPU bottlenecks
- checking in example program
- Testing for CPU Limitation
- eliminating from example program
- Using the Profiler
- from hierarchical data structures
- Optimizing the Data Organization
- memory paging
- Memory Organization
- testing for
- Isolating Bottlenecks in Your Application: Overview
- CPU stage of the pipeline
- A Three-Stage Model of the Graphics Pipeline
- CPU usage bar
- Isolating Bottlenecks in Your Application: Overview
- culling
- Optimizing the Data Organization
- Advanced Transform-Limited Tuning Techniques
- current context
- Rendering Contexts
- customizing detail texture
- Customizing the Detail Function
- customizing sharpen texture
- Customizing the LOD Extrapolation Function
- cvd (CASEVision/Workshop Debugger)
- ogldebug Overview
- cvd debugger
- Inheritance Issues
- data
- expansion in display lists
- Immediate Mode Drawing Versus Display Lists and Vertex Buffer Objects
- preprocessing
- Preprocessing Drawing Data (Meshes and Vertex Loops)
- storage self-managed by display lists
- Immediate Mode Drawing Versus Display Lists and Vertex Buffer Objects
- data organization
- Optimizing the Data Organization
- balancing hierarchy
- Optimizing the Data Organization
- disadvantages of hierarchies
- Optimizing the Data Organization
- data traversal
- CPU Tuning: Basics
- remote rendering
- Immediate Mode Drawing Versus Display Lists and Vertex Buffer Objects
- data types used by packed pixels extension
- Using Packed Pixels
- database
- optimizing by preprocessing
- Preprocessing Drawing Data (Meshes and Vertex Loops)
- optimizing traversal
- Optimizing Database Rendering Code
- DBE
- Swapping Buffers
- dbx
- ogldebug Overview
- dbx debugger
- Inheritance Issues
- dbx debugging tool
- Debugging Your Program
- debugger See ogldebug.
- Using a Configuration File
- debugging
- ogldebug—The OpenGL Debugger
- animations
- Animation Problems
- blank window
- Blank Window
- CASE tools
- Debugging Your Program
- dbx
- Debugging Your Program
- depth testing
- Depth Buffering Problems
- gdb
- Debugging Your Program
- glOrtho()
- Blank Window
- glPerspective()
- Blank Window
- lighting
- Lighting Problems
- ogldebug
- Debugging Your Program
- projection matrix
- Blank Window
- default colormaps
- Multiple Colormap Issues
- DefaultVisual() Xlib macro
- Some Background on Visuals
- degugging
- Widget Troubleshooting
- deleting unneeded display lists
- CPU Tuning: Display Lists
- depth buffer clear
- Benchmarking Basics
- depth buffering
- Using Expensive Per-Fragment Operations Efficiently
- Benchmarking Libraries: libpdb and libisfast
- clearing depth and color buffer
- Using Clear Operations
- debugging
- Depth Buffering Problems
- in example program
- Testing Again for Fill Limitation
- optimizing
- Using Depth Buffering Efficiently
- depth peeling
- Why Use Occlusion Queries?
- depth testing
- Depth Buffering Problems
- DepthBufferingIsFast()
- Using libisfast
- detail texture
- SGIS_detail_texture—The Detail Texture Extension
- and texture objects
- Using Detail Texture and Texture Object
- customizing
- Customizing the Detail Function
- example program
- Detail Texture Example Program
- how computed
- Detail Texture Computation
- LOD interpolation function
- Customizing the Detail Function
- magnification filters
- Creating a Detail Texture and a Low-Resolution Texture
- determining cache size
- Minimizing Cache Misses
- Developer Toolbox
- Example Programs
- digital monitors
- Configuring Monitor Types
- direct rendering and pbuffers
- PBuffers and Pixmaps
- direct rendering contexts
- Direct and Indirect Rendering
- DirectColor visuals
- Some Background on Visuals
- Less-Rigid Match of GLX Visual and X Visual
- dis command
- Examining Assembly Code
- display lists
- appropriate use
- CPU Tuning: Display Lists
- compiling
- Immediate Mode Drawing Versus Display Lists and Vertex Buffer Objects
- complex structures
- Immediate Mode Drawing Versus Display Lists and Vertex Buffer Objects
- contrasted with immediate mode
- Immediate Mode Drawing Versus Display Lists and Vertex Buffer Objects
- deleting unneeded
- CPU Tuning: Display Lists
- dependent on context
- X Window System Problems
- duplication
- CPU Tuning: Display Lists
- fonts and strings
- Using Fonts and Strings
- for X bitmap fonts
- Using Fonts and Strings
- InfiniteReality systems
- Miscellaneous Performance Hints
- list priority extension
- SGIX_list_priority—The List Priority Extension
- optimizing
- CPU Tuning: Display Lists
- sharing
- X Window System Problems
- tuning
- CPU Tuning: Display Lists
- displays, retrieving information
- Retrieving Display and Context Information
- divided-screen stereo
- Stereo Rendering Background Information
- double buffering
- Using Animations
- Tuning Animation
- double buffering X extension
- Swapping Buffers
- DP3 instruction
- Fragment and Vertex Program Instructions
- DP4 instruction
- Fragment and Vertex Program Instructions
- DPH instruction
- Fragment and Vertex Program Instructions
- draw arrays, multiple
- EXT_multi_draw_arrays—The Multiple Draw Arrays Extension
- draw buffers
- Why Use Multiple Draw Buffers?
- drawables
- and GLXFBConfig
- Describing a Drawable With a GLXFBConfig Construct (FBConfig)
- definition
- GLX Drawables—Windows and Pixmaps
- read drawable
- Read and Write Drawables
- rendering
- Using Pixmaps
- write drawable
- Read and Write Drawables
- drawing
- avoiding after screen clear
- Optimizing Frame Rate Performance
- fast pixel drawing
- Drawing Pixels Fast
- location in call tree
- Using Specialized Drawing Subroutines and
Macros
- optimizing
- Tuning the Geometry Subsystem
- drawing-area widgets
- About OpenGL Drawing-Area Widgets
- and colormaps
- X Window Colormaps
- attributes
- Choosing the Visual for the Drawing-Area Widget
- callbacks
- Using Drawing-Area Widget Callbacks
- Using Drawing-Area Widget Callbacks
- creating
- About OpenGL Drawing-Area Widgets
- Creating the Widgets
- DST instruction
- Fragment and Vertex Program Instructions
- DUAL* formats
- Using the Texture Select Extension
- dual-channel
- configuring
- Configuring a System for Dual-Channel Operation
- DXTC
- EXT_texture_compression_s3tc—The S3 Compressed Texture Format Extension
- edge clamping
- SGIS_texture_edge/border_clamp—Texture Clamp Extensions
- effective levels
- Virtual Clipmaps
- end conditions of loops
- Examples for Optimizing Program Structure
- errors
- BadAlloc X protocol error
- Overlay Troubleshooting
- Creating a Pbuffer
- BadMatch X protocol error
- Inheritance Issues
- Creating a Colormap and a Window
- Creating a Pbuffer
- Creating and Using Pixmaps
- Possible Match Errors
- Possible Match Errors
- calling glGetError()
- General Tips for Debugging Graphics Programs
- error handling
- Choosing the Visual for the Drawing-Area Widget
- GL_INVALID_OPERATION error
- Querying Data in Buffer Objects
- Constraints on S3TC Texture Formats
- Using Multiple Draw Buffers
- Errors
- Errors
- GL_INVALID_VALUE error
- Errors
- PDB_ALREADY_OPEN
- Using libpdb
- PDB_CANT_WRITE
- Using libpdb
- PDB_NOT_FOUND
- Using libpdb
- PDB_NOT_OPEN
- Using libpdb
- PDB_OUT_OF_MEMORY
- Using libpdb
- PDB_SYNTAX_ERROR
- Using libpdb
- vertex and fragment programs
- Errors
- events
- Handling Mouse Events
- buffer clobber
- Directing the Buffer Clobber Event
- processing with callbacks
- Background Information
- Xlib
- Xlib Event Handling
- EX2 instruction
- Fragment and Vertex Program Instructions
- example programs
- benchmarking
- Benchmarks
- checking for extensions
- Example Program: Checking for Extension Availability
- colormaps
- Colormap Example
- default colormap
- Multiple Colormap Issues
- detail texture
- Detail Texture Example Program
- drawing pixels fast
- Drawing Pixels Fast
- event handling with Xlib
- Handling Mouse Events
- fonts and strings
- Using Fonts and Strings
- location
- Location of Example Source Code (IRIX-Specific)
- Example Programs
- motif
- Simple Motif Example Program
- mouse motion events
- Using the Input Callback
- pdbMeasureRate()
- Example for pdbReadRate()
- pdbWriteRate()
- Example for pdbMeasureRate()
- popup menu
- Using Popup Menus With the GLwMDrawingArea Widget
- sharpen texture extension
- Sharpen Texture Example Program
- tuning example
- Tuning Example
- workproc
- Workproc Example
- Xlib
- Simple Xlib Example Program
- Xlib event handling
- Handling Mouse Events
- EXP instruction
- Vertex Program Instructions
- expensive modes
- Choosing Modes Wisely
- expose callback
- Using Drawing-Area Widget Callbacks
- Creating Overlays
- Expose events
- Mapping the Window
- Exposing a Window
- batching
- Performance Considerations for X and OpenGL
- expose() callback
- Mapping the Window
- exposing windows
- Exposing a Window
- EXT_abgr
- EXT_abgr—The ABGR Extension
- EXT_blend_color
- Constant Color Blending Extension
- EXT_blend_minmax
- Minmax Blending Extension
- EXT_blend_subtract
- Blend Subtract Extension
- EXT_clip_volume_hint extension
- EXT_clip_volume_hint—The Clip Volume Hint Extension
- EXT_compiled_vertex_array extension
- EXT_compiled_vertex_array—The Compiled Vertex Array Extension
- EXT_convolution
- EXT_convolution—The Convolution Extension
- EXT_fog_coord extension
- EXT_fog_coord—The Fog Coordinate Extension
- EXT_histogram
- EXT_histogram—The Histogram and Minmax Extensions
- EXT_import_context
- EXT_import_context—The Import Context Extension
- EXT_multi_draw_arrays extension
- EXT_multi_draw_arrays—The Multiple Draw Arrays Extension
- EXT_packed_pixels
- EXT_packed_pixels—The Packed Pixels Extension
- EXT_secondary_color extension
- EXT_secondary_color—The Secondary Color Extension
- EXT_texgen_reflection extension
- The Texture Coordinate Generation Extensions (Legacy)
- EXT_texture3D
- EXT_texture3D—The 3D Texture Extension
- EXT_texture_compression_s3tc extension
- EXT_texture_compression_s3tc—The S3 Compressed Texture Format Extension
- EXT_texture_filter_anisotropic extension
- EXT_texture_filter_anisotropic—The Anisotropic Texture Filtering Extension
- EXT_texture_rectangle extension
- EXT_texture_rectangle—The Rectangle Texture Extension
- EXT_vertex_shader extensions
- The Legacy Vertex and Fragment Program Extensions
- EXT_visual_info
- EXT_visual_info—The Visual Info Extension
- EXT_visual_rating
- EXT_visual_rating—The Visual Rating Extension
- extension
- vertex buffer objects
- ARB_vertex_buffer_object—The Vertex Buffer Object Extension
- extensions
- 3D texture
- EXT_texture3D—The 3D Texture Extension
- ABGR
- EXT_abgr—The ABGR Extension
- blend subtract
- Blend Subtract Extension
- check for availability
- Silicon Graphics X Servers
- checking for availability
- How to Check for OpenGL Extension Availability
- clip volume hint
- EXT_clip_volume_hint—The Clip Volume Hint Extension
- clipmaps
- SGIX_clipmap—The Clipmap Extension
- color blending
- Constant Color Blending Extension
- color matrix
- SGI_color_matrix—The Color Matrix Extension
- color table
- SGI_color_table—The Color Table Extension
- convolution
- EXT_convolution—The Convolution Extension
- deprecated
- OpenGL® on Silicon Graphics Systems
- detail texture
- SGIS_detail_texture—The Detail Texture Extension
- filter4 parameters
- SGIS_filter4_parameters—The Filter4 Parameters Extension
- fog coordinates
- EXT_fog_coord—The Fog Coordinate Extension
- fragment programs
- Vertex and Fragment Program Extensions
- The Legacy Vertex and Fragment Program Extensions
- frame buffer configuration
- Using Framebuffer Configurations
- GLX extension to X
- Silicon Graphics X Servers
- histogram
- EXT_histogram—The Histogram and Minmax Extensions
- import context
- EXT_import_context—The Import Context Extension
- instruments
- SGIX_instruments—The Instruments Extension
- interlace
- SGIX_interlace—The Interlace Extension
- list priority
- SGIX_list_priority—The List Priority Extension
- make current read
- SGI_make_current_read—The Make Current Read Extension
- minmax blending
- Minmax Blending Extension
- multiple draw arrays
- EXT_multi_draw_arrays—The Multiple Draw Arrays Extension
- multisampling
- The Multisample Extension
- NURBS tesselator
- GLU_EXT_NURBS_tessellator—The NURBS Tessellator Extension
- object space tess
- GLU_EXT_object_space—The Object Space Tess Extension
- packed pixels
- EXT_packed_pixels—The Packed Pixels Extension
- pixel texture
- SGIX_pixel_texture—The Pixel Texture Extension
- pixel's raster or window position
- ARB_window_pos—The Window-Space Raster Position Extension
- point parameter
- The Point Parameters Extension
- prefixes
- How to Check for OpenGL Extension Availability
- raster position of pixel
- ARB_window_pos—The Window-Space Raster Position Extension
- resource
- Resource Control Extensions
- secondary color
- EXT_secondary_color—The Secondary Color Extension
- shadow
- The Shadow Extensions
- sharpen texture
- SGIS_sharpen_texture—The Sharpen Texture Extension
- specification
- Example Programs
- sprite
- SGIX_sprite—The Sprite Extension
- suffixes
- Extensions to OpenGL
- swap barrier
- SGIX_swap_barrier—The Swap Barrier Extension
- swap control
- SGI_swap_control—The Swap Control Extension
- swap group
- SGIX_swap_group—The Swap Group Extension
- system support
- System Support for OpenGL Versions and Extensions
- texture border clamp
- SGIS_texture_edge/border_clamp—Texture Clamp Extensions
- texture color table
- SGI_texture_color_table—The Texture Color Table Extension
- texture coordinate generation
- The Texture Coordinate Generation Extensions (Legacy)
- texture edge clamp
- SGIS_texture_edge/border_clamp—Texture Clamp Extensions
- texture environment add
- SGIX_texture_add_env—The Texture Environment Add Extension
- texture filter4
- SGIS_texture_filter4—The Texture Filter4 Extensions
- texture LOD
- SGIS_texture_lod—The Texture LOD Extension
- texture LOD bias
- SGIX_texture_lod_bias—The Texture LOD Bias Extension
- texture select
- SGIS_texture_select—The Texture Select Extension
- texture_scale_bias
- SGIX_texture_scale_bias—The Texture Scale Bias Extension
- texturing
- Texturing Extensions
- vertex array objects
- The Vertex Array Object Extensions (Legacy)
- vertex arrays, compiled
- EXT_compiled_vertex_array—The Compiled Vertex Array Extension
- vertex programs
- Vertex and Fragment Program Extensions
- The Legacy Vertex and Fragment Program Extensions
- video
- Video Extensions
- video resize
- SGIX_video_resize—The Video Resize Extension
- video sync
- SGI_video_sync—The Video Synchronization Extension
- visual info
- EXT_visual_info—The Visual Info Extension
- visual rating
- EXT_visual_rating—The Visual Rating Extension
- wrapper libraries
- Extension Wrapper Libraries and Portability Notes
- extglgen, extension wrapper library
- Extension Wrapper Libraries and Portability Notes
- eye point orientation
- SGIX_sprite—The Sprite Extension
- fading with constant color blending
- Using Constant Colors for Blending
- fallback resources
- Setting Up Fallback Resources
- Setting Up Fallback Resources
- Setting Up Fallback Resources
- false color imaging
- Why Use a Texture Color Table?
- fast paths (See performance.)
- Optimizing Performance on Onyx4 and Silicon Graphics Prism Systems
- FBConfig (framebuffer configuration)
- Using Framebuffer Configurations
- FBConfigs
- GLX and Overloaded Visuals
- File menu (ogldebug)
- Using the File Menu to Interact With ogldebug
- fill rates
- Benchmarking Basics
- fill-limited code
- definition
- Isolating Bottlenecks in Your Application: Overview
- in example program
- Testing for Fill Limitation
- filter4 parameters extension
- SGIS_filter4_parameters—The Filter4 Parameters Extension
- Lagrange interpolation
- SGIS_filter4_parameters—The Filter4 Parameters Extension
- Mitchell-Netravali scheme
- SGIS_filter4_parameters—The Filter4 Parameters Extension
- filters
- texture filter4
- SGIS_texture_filter4—The Texture Filter4 Extensions
- finding bottlenecks
- Isolating Bottlenecks in Your Application: Overview
- findvis
- GLX and Overloaded Visuals
- Some Background on Visuals
- flat shading
- Choosing Modes Wisely
- Using Expensive Per-Fragment Operations Efficiently
- Using Expensive Per-Fragment Operations Efficiently
- Smooth Shading Versus Flat Shading
- flickering in animations
- Using Animations
- flight simulators
- Using Depth Buffering Efficiently
- floating point textures
- Why Use Floating Point Textures?
- FLR instruction
- Fragment and Vertex Program Instructions
- fog
- Choosing Modes Wisely
- fog coordinates
- EXT_fog_coord—The Fog Coordinate Extension
- fonts
- Using Fonts and Strings
- Using Fonts and Strings
- Using Fonts and Strings
- form widget
- Creating the Widgets
- Creating Overlays
- fragment programs
- SGIS_detail_texture—The Detail Texture Extension
- SGIS_point_line_texgen—The Point or Line Texture Generation Extension
- SGIS_sharpen_texture—The Sharpen Texture Extension
- SGIX_texture_scale_bias—The Texture Scale Bias Extension
- SGIS_fog_function—The Fog Function Extension
- SGIS_fog_offset—The Fog Offset Extension
- Platform Dependencies
- Platform Issues
- Vertex and Fragment Program Extensions
- frame rates
- preferred by viewers
- Swapping Buffers
- tuning
- How Frame Rate Determines Animation Speed
- frame widget
- Creating the Widgets
- Creating Overlays
- framebuffer configuration extension
- Using Framebuffer Configurations
- framebuffer configurations
- GLX and Overloaded Visuals
- framebuffer, efficient use
- Tuning the Imaging Pipeline
- framelock
- configuring
- Configuring a System for External Genlock or Framelock
- FRC instruction
- Fragment and Vertex Program Instructions
- frontface removal
- Using Backface/Frontface Removal
- full-scene antialiasing
- configuring
- Configuring a System for Full-Scene Antialiasing
- -g compiler option
- CPU Tuning: Basics
- gamut compression
- Why Use a Texture Color Table?
- gamut expansion
- SGIX_texture_scale_bias—The Texture Scale Bias Extension
- gcc command
- Examining Assembly Code
- gdb debugging tool
- Debugging Your Program
- Genlock
- configuring
- Configuring a System for External Genlock or Framelock
- genlocked pipelines
- Why Use the Swap Barrier Extension?
- geometry-limited code
- finding bottlenecks
- Isolating Bottlenecks in Your Application: Overview
- in example program
- Working on a Geometry-Limited Program
- tuning
- Tuning the Geometry Subsystem
- getColormap()
- Multiple Colormap Issues
- getgdesc(), IRIS GL function
- Benchmarking Libraries: libpdb and libisfast
- gettimeofday()
- Achieving Accurate Timing Measurements
- gfxinfo
- System-Specific Tuning
- gfxinit
- SGI_video_sync—The Video Synchronization Extension
- ginit() callback
- Creating the Widgets
- GL_(UN)PACK_IMAGE_HEIGHT_EXT
- Using 3D Textures
- GL_1PASS_SGIS
- Accumulating Multisampled Images
- GL_2PASS_0_SGIS
- Accumulating Multisampled Images
- GL_4PASS_0_SGIS
- Accumulating Multisampled Images
- GL_ABGR_EXT
- EXT_abgr—The ABGR Extension
- GL_BLEND
- Blending Extensions
- GL_CLAMP_TO_BORDER_SGIS
- Why Use the Texture Clamp Extensions?
- GL_CLAMP_TO_EDGE_SGIS
- Why Use the Texture Clamp Extensions?
- GL_COMPILE_AND_EXECUTE
- CPU Tuning: Display Lists
- GL_CONVOLUTION_BORDER_MODE_EXT
- Retrieving Convolution State Parameters
- GL_CONVOLUTION_FILTER_BIAS_EXT
- Retrieving Convolution State Parameters
- GL_CONVOLUTION_FILTER_SCALE_EXT
- Retrieving Convolution State Parameters
- GL_CONVOLUTION_FORMAT_EXT
- Retrieving Convolution State Parameters
- GL_CONVOLUTION_HEIGHT_EXT
- Retrieving Convolution State Parameters
- GL_CONVOLUTION_WIDTH_EXT
- Retrieving Convolution State Parameters
- GL_DEPTH_TEST
- Depth Buffering Problems
- GL_INTERLACE_SGIX
- Using the Interlace Extension
- GL_INVALID_OPERATION error
- Querying Data in Buffer Objects
- Constraints on S3TC Texture Formats
- Using Multiple Draw Buffers
- Errors
- Errors
- GL_INVALID_VALUE error
- Errors
- GL_LINE_SMOOTH
- Multisampled Lines
- GL_LINEAR_DETAIL_ALPHA_SGIS
- Creating a Detail Texture and a Low-Resolution Texture
- GL_LINEAR_DETAIL_COLOR_SGIS
- Creating a Detail Texture and a Low-Resolution Texture
- GL_LINEAR_DETAIL_SGIS
- Creating a Detail Texture and a Low-Resolution Texture
- GL_LINEAR_SHARPEN_ALPHA_SGIS
- How to Use the Sharpen Texture Extension
- GL_LINEAR_SHARPEN_COLOR_SGIS
- How to Use the Sharpen Texture Extension
- GL_LINEAR_SHARPEN_SGIS
- How to Use the Sharpen Texture Extension
- GL_MAX_CONVOLUTION_HEIGHT_EXT
- Retrieving Convolution State Parameters
- GL_MAX_CONVOLUTION_WIDTH_EXT
- Retrieving Convolution State Parameters
- GL_POINT_FADE_THRESHOLD_SIZE_SGIS
- The Point Parameters Extension
- GL_POINT_SIZE_MAX_SGIS
- The Point Parameters Extension
- GL_POINT_SIZE_MIN_SGIS
- The Point Parameters Extension
- GL_POST_COLOR_MATRIX_*_BIAS_SGI
- SGI_color_matrix—The Color Matrix Extension
- GL_POST_COLOR_MATRIX_*_SCALE_SGI
- SGI_color_matrix—The Color Matrix Extension
- GL_RENDERER
- Example Program: Checking for Extension Availability
- System-Specific Tuning
- GL_RGB5_A1_EXT
- Tuning the Imaging Pipeline
- GL_SAMPLE_ALPHA_TO_MASK_SGIS
- Using Advanced Multisampling Options
- GL_SAMPLE_MASK_SGIS
- Using a Multisample Mask to Fade Levels of Detail
- GL_SHININESS
- Lighting Operations With Noticeable Performance Costs
- GL_SPRITE_AXIAL_SGIX
- Available Sprite Modes
- GL_SPRITE_EYE_ALIGNED_SGIX
- Available Sprite Modes
- GL_SPRITE_OBJECT_ALIGNED_SGIX
- Available Sprite Modes
- GL_TEXTURE_CLIPMAP_CENTER_SGIX
- Setting Up the Clipmap Stack
- GL_TEXTURE_CLIPMAP_OFFSET_SGIX
- Setting Up the Clipmap Stack
- GL_TEXTURE_COLOR_TABLE_SGI
- Using Texture Color Tables
- GL_TEXTURE_LOD_BIAS_*_SGIX
- Using the Texture LOD Bias Extension
- GL_TEXTURE_MAG_FILTER
- Creating a Detail Texture and a Low-Resolution Texture
- GL_TEXTURE_MAX_LOD_SGIS
- Specifying a Minimum or Maximum Level of Detail
- GL_TEXTURE_MIN_LOD_SGIS
- Specifying a Minimum or Maximum Level of Detail
- GL_TEXTURE_WRAP_R_EXT
- Using 3D Textures
- Using 3D Textures
- GL_UNPACK_ALIGNMENT
- Pixel and Texture Write Problems
- GL_UNSIGNED_BYTE_3_3_2_EXT
- Using Packed Pixels
- GL_UNSIGNED_INT_10_10_10_2_EXT
- Using Packed Pixels
- GL_UNSIGNED_INT_8_8_8_8_EXT
- Using Packed Pixels
- GL_UNSIGNED_SHORT_4_4_4_4_EXT
- Using Packed Pixels
- GL_UNSIGNED_SHORT_5_5_5_1_EXT
- Using Packed Pixels
- GL_VERSION
- Example Program: Checking for Extension Availability
- glAlphaFragmentOp1ATI()
- New Functions
- glAlphaFragmentOp2ATI()
- New Functions
- glAlphaFragmentOp3ATI()
- New Functions
- glAlphaFunc()
- Advanced Transform-Limited Tuning Techniques
- glArrayElement()
- Using Buffer Objects as Vertex Array Sources
- glArrayObjectATI()
- New Functions
- glBegin()
- Examples for Optimizing Program Structure
- glBeginFragmentShaderATI()
- New Functions
- glBeginOcclusionQueryNV()
- New Functions
- glBeginVertexShaderEXT()
- New Functions
- glBindBufferARB()
- Defining Buffer Objects
- Using Buffer Objects as Array Indices
- New Functions
- glBindFragmentShaderATI()
- New Functions
- glBindLightParameterEXT()
- New Functions
- glBindMaterialParameterEXT()
- New Functions
- glBindParameterEXT()
- New Functions
- glBindProgramARB()
- Defining and Enabling Programs
- Errors
- New Functions
- glBindSwapBarrierSGIX()
- New Functions
- glBindTexGenParameterEXT()
- New Functions
- glBindTextureUnitParameterEXT()
- New Functions
- glBindVertexShaderEXT()
- New Functions
- glBlendColorEXT()
- Using Constant Colors for Blending
- New Functions
- glBlendEquationEXT()
- Minmax Blending Extension
- New Functions
- glBlendFunc()
- Blending Extensions
- Using Constant Colors for Blending
- glBufferDataARB()
- Defining and Editing Buffer Object Contents
- Using Buffer Objects as Array Indices
- New Functions
- glBufferSubData()
- Mapping Buffer Objects to Application Memory
- Mapping Buffer Objects to Application Memory
- glBufferSubDataARB()
- Querying Data in Buffer Objects
- New Functions
- glCallList()
- CPU Tuning: Display Lists
- glCallLists()
- Using Fonts and Strings
- glClear()
- Blank Window
- Mixing Computation With Graphics
- glClipPlane()
- OpenGL State Parameters
- glColor3bEXT()
- Using Secondary Color
- glColor3bvEXT()
- Using Secondary Color
- glColor3dEXT()
- Using Secondary Color
- glColor3dvEXT()
- Using Secondary Color
- glColor3fEXT()
- Using Secondary Color
- glColor3fvEXT()
- Using Secondary Color
- glColor3iEXT()
- Using Secondary Color
- glColor3ivEXT()
- Using Secondary Color
- glColor3sEXT()
- Using Secondary Color
- glColor3svEXT()
- Using Secondary Color
- glColor3ubEXT()
- Using Secondary Color
- glColor3ubvEXT()
- Using Secondary Color
- glColor3uiEXT()
- Using Secondary Color
- glColor3uivEXT()
- Using Secondary Color
- glColor3usEXT()
- Using Secondary Color
- glColor3usvEXT()
- Using Secondary Color
- glColor4ub()
- Naming Statements
- glColorFragmentOp1ATI()
- New Functions
- glColorFragmentOp2ATI()
- New Functions
- glColorFragmentOp3ATI()
- New Functions
- glColorMaterial()
- Lighting Operations With Noticeable Performance Costs
- glColorPointer()
- Using Buffer Objects as Vertex Array Sources
- glColorTableParameterivSGI()
- New Functions
- glColorTableSGI()
- Using Texture Color Tables
- Specifying a Color Table
- New Functions
- glCompressedTexImage2D()
- Using S3TC Texture Formats
- Using S3TC Texture Formats
- glCompressedTexImage2DARB()
- Constraints on S3TC Texture Formats
- glCompressedTexSubImage2D()
- Using S3TC Texture Formats
- Using S3TC Texture Formats
- Constraints on S3TC Texture Formats
- glConvolutionFilter*DEXT()
- Performing Convolution
- glConvolutionFilter1DEXT()
- New Functions
- glConvolutionFilter2DEXT()
- New Functions
- glConvolutionParameterEXT()
- New Functions
- glCopyColorTableSGI()
- Using Framebuffer Image Data for Color Tables
- glCopyConvolutionFilter*DEXT()
- Separable and General Convolution Filters
- glCopyConvolutionFilter1DEXT()
- New Functions
- glCopyConvolutionFilter2DEXT()
- New Functions
- glCopyPixels() and minmax extension
- Using the Minmax Part of the Histogram Extension
- glCopyTexImage1D()
- Using Floating Point Textures
- glCopyTexImage2D()
- Using Floating Point Textures
- Using S3TC Texture Formats
- Using Rectangle Textures
- glCopyTexImage3DEXT()
- New Functions
- glDeleteBuffersARB()
- Using Buffer Objects
- New Functions
- glDeleteFragmentShaderATI()
- New Functions
- glDeleteLists()
- CPU Tuning: Display Lists
- glDeleteOcclusionQueriesNV()
- New Functions
- glDeleteProgramsARB()
- New Functions
- glDeleteVertexShaderEXT()
- New Functions
- glDepthRange()
- OpenGL State Parameters
- Choosing Modes Wisely
- glDetailTexFuncSGIS()
- Customizing the Detail Function
- New Functions
- glDisableVariantClientStateEXT()
- New Functions
- glDisableVertexAttribArrayARB()
- New Functions
- glDrawArrays()
- Using Buffer Objects as Vertex Array Sources
- glDrawBuffer()
- Using Multiple Draw Buffers
- glDrawBuffersATI()
- Using Multiple Draw Buffers
- New Function
- glDrawElementArrayATI()
- New Functions
- glDrawElements()
- Using Buffer Objects as Vertex Array Sources
- glDrawPixels()
- Pixel Optimizations: Reading and Writing Pixel Data
- glDrawPixels(), optimizing
- Drawing Pixels Fast
- glDrawRangeElementArrayATI()
- New Functions
- glDrawRangeElements()
- Using Buffer Objects as Vertex Array Sources
- glEdgeFlagPointer()
- Using Buffer Objects as Vertex Array Sources
- GLee, extension wrapper library
- Extension Wrapper Libraries and Portability Notes
- glElementPointerATI()
- New Functions
- glEnableVariantClientStateEXT()
- New Functions
- glEnableVertexAttribArrayARB()
- New Functions
- glEnd()
- Examples for Optimizing Program Structure
- glEndFragmentShaderATI()
- New Functions
- glEndOcclusionQueryNV()
- Using the NV_occlusion_query Extension
- New Functions
- glEndVertexShaderEXT()
- New Functions
- GLEW, extension wrapper library
- Extension Wrapper Libraries and Portability Notes
- glExtractComponentEXT()
- New Functions
- glFinish()
- Achieving Accurate Timing Measurements
- Achieving Accurate Timing Measurements
- glFogCoorddEXT()
- New Functions
- glFogCoorddvEXT()
- New Functions
- glFogCoordfEXT()
- New Functions
- glFogCoordfvEXT()
- New Functions
- glFogCoordPointerEXT()
- Using Buffer Objects as Vertex Array Sources
- New Functions
- glFogf()
- OpenGL State Parameters
- glFogFuncSGIS()
- New Function
- glFreeObjectBufferATI()
- New Functions
- glGenBuffers()
- Defining Buffer Objects
- glGenBuffersARB()
- New Functions
- glGenFragmentShadersATI()
- New Functions
- glGenOcclusionQueriesNV()
- Using the NV_occlusion_query Extension
- New Functions
- glGenProgramsARB()
- New Functions
- glGenSymbolsEXT()
- New Functions
- glGenVertexShadersEXT()
- New Functions
- glGetArrayObjectivATI()
- New Functions
- glGetBufferSubDataARB()
- New Functions
- glGetColorTableParameterfvSGI()
- New Functions
- glGetColorTableParameterivSGI()
- New Functions
- glGetColorTableSGI()
- New Functions
- glGetConvolutionFilterEXT()
- Separable and General Convolution Filters
- New Functions
- glGetDetailTexFuncSGIS()
- New Functions
- glGetError()
- General Tips for Debugging Graphics Programs
- General Tips for Debugging Graphics Programs
- glGetFloatv()
- Using Anisotropic Texturing
- glGetHistogramEXT()
- Using the Histogram Extension
- New Functions
- glGetHistogramParameterEXT()
- New Functions
- glGetInstrumentsSGIX()
- New Functions
- glGetIntegerv()
- Using the Separate Stencil Extension
- Using Rectangle Textures
- Using Rectangle Textures
- Using Multiple Draw Buffers
- glGetInvariantBooleanvEXT()
- New Functions
- glGetInvariantFloatvEXT()
- New Functions
- glGetInvariantIntegervEXT()
- New Functions
- glGetListParameterSGIX()
- Using the List Priority Extension
- New Functions
- glGetLocalConstantBooleanvEXT()
- New Functions
- glGetLocalConstantIntegervEXT()
- New Functions
- glGetMinmaxEXT()
- Using the Minmax Part of the Histogram Extension
- New Functions
- glGetMinmaxParameterEXT()
- Using the Minmax Part of the Histogram Extension
- New Functions
- glGetObjectBufferfvATI()
- New Functions
- glGetObjectBufferivATI()
- New Functions
- glGetOcclusionQueryNV()
- Using the NV_occlusion_query Extension
- glGetOcclusionQueryuiNV()
- Using the NV_occlusion_query Extension
- glGetOcclusionQueryuivNV()
- New Functions
- glGetProgramEnvParameterdvARB()
- New Functions
- glGetProgramEnvParameterfvARB()
- New Functions
- glGetProgramivARB()
- Program Resource Limits and Usage
- Program String Length, Program String Format, and Program String Name
- Source Text
- New Functions
- glGetProgramLocalParameterdvARB()
- New Functions
- glGetProgramLocalParameterfvARB()
- New Functions
- glGetProgramStringARB()
- New Functions
- glGetSeparableFilterEXT()
- New Functions
- glGetSharpenTexFuncSGIS()
- New Functions
- glGetString()
- How to Check for OpenGL Extension Availability
- Example Program: Checking for Extension Availability
- System-Specific Tuning
- glGetTexFilterFuncSGIS()
- New Functions
- glGetVariantArrayObjectfvATI()
- New Functions
- glGetVariantArrayObjectivATI()
- New Functions
- glGetVariantBooleanvEXT()
- New Functions
- glGetVariantFloatvEXT()
- New Functions
- glGetVariantIntegervEXT()
- New Functions
- glGetVariantPointervEXT()
- New Functions
- glGetVertexAttribArrayObjectfvATI()
- New Functions
- glGetVertexAttribArrayObjectivATI()
- New Functions
- glGetVertexAttribdvARB()
- New Functions
- glGetVertexAttribfvARB()
- New Functions
- glGetVertexAttribivARB()
- New Functions
- glGetVertexAttribPointervARB()
- New Functions
- glHint()
- Using Clip Volume Hints
- glHistogramEXT()
- Using the Histogram Extension
- New Functions
- glIndexPointer()
- Using Buffer Objects as Vertex Array Sources
- glInsertComponentEXT()
- New Functions
- glInstrumentsBufferSGIX()
- Specifying the Buffer
- New Functions
- glInstrumentsSGIX()
- Measurement Format
- glintro man page
- Extensions to OpenGL
- glIsBufferARB()
- New Functions
- glIsObjectBufferATI function()
- The glXGetProcAddressARB() Function
- glIsObjectBufferATI()
- New Functions
- glIsOcclusionQueryNV()
- New Functions
- glIsProgramARB()
- New Functions
- glIsVariantEnabledEXT()
- New Functions
- glJoinSwapGroupSGIX()
- New Function
- glLightf()
- OpenGL State Parameters
- glLightModelf()
- OpenGL State Parameters
- glListBase()
- Using Fonts and Strings
- glListParameterSGIX()
- Using the List Priority Extension
- New Functions
- glLoadMatrixf()
- OpenGL State Parameters
- glLockArraysEXT()
- New Functions
- glMapBufferARB()
- New Functions
- The Vertex Array Object Extensions (Legacy)
- glMapObjectBufferATI()
- New Functions
- glMaterial()
- Lighting Operations With Noticeable Performance Costs
- glMaterialf()
- OpenGL State Parameters
- OpenGL State Parameters
- glMatrixMode()
- OpenGL State Parameters
- Generic Program Matrix Specification
- Program Resource Limits and Usage
- glMinmaxEXT()
- Using the Minmax Part of the Histogram Extension
- New Functions
- glMultiDrawArrays()
- Using Buffer Objects as Vertex Array Sources
- glMultiDrawArraysEXT()
- New Functions
- glMultiDrawElementsEXT()
- Using Buffer Objects as Vertex Array Sources
- Using Buffer Objects as Array Indices
- Using Buffer Objects as Array Indices
- New Functions
- glNewObjectBufferATI()
- New Functions
- glNormal*()
- Commands
- glNormalPointer()
- Using Buffer Objects as Vertex Array Sources
- Vertex Attributes
- glOrtho()
- Blank Window
- glPassTexCoordATI()
- New Functions
- glPerspective()
- Blank Window
- glPixelTexGenSGIX()
- SGIX_pixel_texture—The Pixel Texture Extension
- New Functions
- glPointParameterfARB()
- New Procedures and Functions
- glPointParameterfSGIS()
- The Point Parameters Extension
- New Procedures and Functions
- glPointParameterfvARB()
- New Procedures and Functions
- OpenGL State Parameters
- glPointParameterfvSGI()
- New Procedures and Functions
- glPointParameterfvSGIS()
- The Point Parameters Extension
- glPollInstrumentsSGIX()
- Retrieving Information
- New Functions
- glProgramEnv*()
- Program Parameter Specification
- glProgramEnvParameter4*()
- New Functions
- glProgramLocal*()
- Program Parameter Specification
- glProgramLocalParameter4*()
- New Functions
- glProgramStringARB()
- New Functions
- glQueryMaxSwapBarriersSGIX()
- New Functions
- glReadInstrumentsSGIX()
- Enabling, Starting, and Stopping Instruments
- New Functions
- glReadPixels()
- Why Use Occlusion Queries?
- Pixel Optimizations: Reading and Writing Pixel Data
- glReferencePlaneSGIX()
- New Function
- glResetHistogramEXT()
- New Functions
- glResetMinmaxEXT()
- New Functions
- glSampleAlphaToMaskSGIS()
- Using a Multisample Mask to Fade Levels of Detail
- glSampleMapATI()
- New Functions
- glSampleMaskSGIS()
- Using Advanced Multisampling Options
- Using a Multisample Mask to Fade Levels of Detail
- New Functions
- glSamplePatternSGIS()
- Accumulating Multisampled Images
- New Functions
- glSecondaryColorPointerEXT()
- Using Buffer Objects as Vertex Array Sources
- glSeparableFilter2DEXT()
- Performing Convolution
- Separable and General Convolution Filters
- New Functions
- glSetFragmentShaderConstantATI()
- New Functions
- glSetInvariantEXT()
- New Functions
- glSetLocalConstantEXT()
- New Functions
- glShadeModel()
- for performance tuning
- Choosing Modes Wisely
- glShaderOp1EXT()
- New Functions
- glShaderOp2EXT()
- New Functions
- glShaderOp3EXT()
- New Functions
- glSharpenTexFuncSGIS()
- Customizing the LOD Extrapolation Function
- New Functions
- glSpriteParameterSGIX()
- New Function
- glStartInstrumentsSGIX()
- Enabling, Starting, and Stopping Instruments
- New Functions
- glStencilFunc()
- Using the Separate Stencil Extension
- glStencilFuncSeparateATI()
- New Functions
- glStencilOp()
- Using the Separate Stencil Extension
- glStencilOpSeparateATI()
- New Functions
- glStopInstrumentsSGIX()
- Enabling, Starting, and Stopping Instruments
- New Functions
- glSwizzleEXT()
- New Functions
- glTexCoordPointer()
- Using Buffer Objects as Vertex Array Sources
- glTexEnvf()
- Using The New Texture Combiner Operations
- OpenGL State Parameters
- glTexEnvi()
- Using The New Texture Combiner Operations
- glTexFilterFuncSGIS()
- Specifying the Filter Function
- New Functions
- glTexGen()
- OpenGL State Parameters
- glTexGenf()
- OpenGL State Parameters
- glTexGeni()
- The Texture Coordinate Generation Extensions (Legacy)
- glTexImage1D()
- Using Floating Point Textures
- glTexImage2D()
- Using Floating Point Textures
- Using S3TC Texture Formats
- Using Rectangle Textures
- Pixel Optimizations: Reading and Writing Pixel Data
- glTexImage2D() and interlacing
- SGIX_interlace—The Interlace Extension
- glTexImage3D()
- Using Floating Point Textures
- glTexImage3DEXT
- Using 3D Textures
- glTexImage3DEXT()
- New Functions
- glTexParameterf()
- Using Anisotropic Texturing
- glTexParameteri()
- Using Texture Mirroring
- glTexSubImage() for clipmap loading
- Updating the Clipmap Stack
- glTexSubImage3DEXT()
- New Functions
- GLU header
- Compiling With the GLX Extension
- GLU include files
- Silicon Graphics X Servers
- GLU_EXT_nurbs_tessellator
- GLU_EXT_NURBS_tessellator—The NURBS Tessellator Extension
- GLU_EXT_object_space_tess
- GLU_EXT_object_space—The Object Space Tess Extension
- GLU_LAGRANGIAN_SGI
- SGIS_filter4_parameters—The Filter4 Parameters Extension
- Using the Filter4 Parameters Extension
- GLU_MITCHELL_NETRAVALI_SGI
- SGIS_filter4_parameters—The Filter4 Parameters Extension
- GLU_OBJECT_PARAMETRIC_ERROR_EXT
- GLU_EXT_object_space—The Object Space Tess Extension
- GLU_OBJECT_PATH_LENGTH_EXT
- GLU_EXT_object_space—The Object Space Tess Extension
- glUnlockArraysEXT()
- New Functions
- glUnmapBufferARB()
- Mapping Buffer Objects to Application Memory
- New Functions
- glUnmapObjectBufferATI()
- New Functions
- gluNurbsCallbackDataEXT()
- Callbacks Defined by the Extension
- gluNurbsProperty()
- GLU_EXT_object_space—The Object Space Tess Extension
- glUpdateObjectBufferATI()
- New Functions
- glUseXFont()
- X Window System Problems
- glVariantArrayObjectATI()
- New Functions
- glVariantPointerEXT()
- New Functions
- glVariant{bsifdubusui}vEXT()
- New Functions
- glVertex3f()
- Naming Statements
- Vertex Attributes
- glVertexAttrib*()
- New Functions
- glVertexAttrib1*()
- Commands
- glVertexAttrib2*()
- Commands
- glVertexAttrib3*()
- Commands
- glVertexAttrib4*()
- Commands
- glVertexAttribArrayObjectATI()
- New Functions
- glVertexAttribPointerARB()
- Using Buffer Objects as Vertex Array Sources
- glVertexPointer()
- Using Buffer Objects as Vertex Array Sources
- GLwCreateMDrawingArea()
- About OpenGL Drawing-Area Widgets
- GLwDrawingAreaMakeCurrent()
- Binding the Context to the Window
- GLwDrawingAreaSwapBuffers()
- Swapping Buffers
- glWeightPointerARB()
- Using Buffer Objects as Vertex Array Sources
- glWindowPos2dARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos2dvARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos2fARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos2fvARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos2iARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos2ivARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos2sARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos2svARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos3dARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos3dvARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos3fARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos3fvARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos3iARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos3ivARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos3sARB()
- Using the Window-Space Raster Position Extenstion
- glWindowPos3svARB()
- Using the Window-Space Raster Position Extenstion
- GLwMDrawingArea widget
- About OpenGL Drawing-Area Widgets
- and popup
- Rubber Banding
- choosing the visual
- Choosing the Visual for the Drawing-Area Widget
- menus
- Using Popup Menus With the GLwMDrawingArea Widget
- overlays
- Introduction to Overlays
- GLwMDrawingAreaMakeCurrent()
- About OpenGL Drawing-Area Widgets
- Using Drawing-Area Widget Callbacks
- GLwMDrawingAreaSwapBuffers()
- About OpenGL Drawing-Area Widgets
- GLwNexposeCallback
- Using Drawing-Area Widget Callbacks
- GLwNginitCallback
- Using Drawing-Area Widget Callbacks
- GLwNinputCallback
- Using Drawing-Area Widget Callbacks
- GLwNresizeCallback
- Using Drawing-Area Widget Callbacks
- glWriteMaskEXT()
- New Functions
- GLX
- GLX Extension to the X Window System
- GLX Extension to the X Window System
- Silicon Graphics X Servers
- Compiling With the GLX Extension
- checking support
- Opening the X Display
- drawables
- GLX Drawables—Windows and Pixmaps
- extensions
- GLX Extension to X
- Opening the X Display
- extensions, list of
- GLX Extensions
- header
- Compiling With the GLX Extension
- importing indirect context
- Importing a Context
- pixmaps
- GLX Drawables—Windows and Pixmaps
- Creating and Using Pixmaps
- pixmaps and exposing windows
- Exposing a Window
- using glXQueryExtension()
- Opening the X Display
- GLX visual
- GLX and Overloaded Visuals
- GLX_ARB_get_proc_address extension
- ARB_get_proc_address—The Dynamic Query-Function-Pointer Extension
- GLX_BUFFER_SIZE
- Creating and Using Pixmaps
- GLX_DRAWABLE_TYPE_SGIX
- FBConfig Constructs
- GLX_FBCONFIG_ID
- FBConfig Constructs
- GLX_GRAY_SCALE_EXT
- Using the Visual Info Extension
- GLX_NONE_EXT
- Using the Visual Rating Extension
- GLX_PSEUDO_COLOR
- Using the Visual Info Extension
- GLX_RENDER_TYPE
- FBConfig Constructs
- GLX_SAMPLE_BUFFERS_SGIS
- Using the Multisample Extension
- GLX_SAMPLES_SGIS
- Using the Multisample Extension
- GLX_SCREEN_EXT
- Retrieving Display and Context Information
- GLX_SHARE_CONTEXT_EXT
- Retrieving Display and Context Information
- GLX_SLOW_EXT
- Using the Visual Rating Extension
- GLX_STATIC_COLOR_EXT
- Using the Visual Info Extension
- GLX_STATIC_GRAY_EXT
- Using the Visual Info Extension
- GLX_TRUE_COLOR_EXT
- Using the Visual Info Extension
- GLX_VISUAL_CAVEAT_EXT
- How an FBConfig Is Selected
- Using the Visual Rating Extension
- GLX_VISUAL_ID_EXT
- Retrieving Display and Context Information
- GLX_X_RENDERABLE
- FBConfig Constructs
- GLX_X_VISUAL_TYPE_EXT
- Using the Visual Info Extension
- glXBindChannelToWindowSGIX()
- New Functions
- glXBindSwapBarriersSGIX()
- Using the Swap Barrier Extension
- glXChannelRectSGIX()
- New Functions
- glXChannelRectSyncSGIX()
- Controlling When the Video Resize Update Occurs
- New Functions
- glXChooseFBConfig()
- Rendering to a Pbuffer
- FBConfig Constructs
- Related Functions
- EXT_visual_info—The Visual Info Extension
- EXT_visual_rating—The Visual Rating Extension
- glXChooseFBConfigSGIX()
- How an FBConfig Is Selected
- glXChooseVisual()
- Selecting a Visual
- Choosing the Visual for the Drawing-Area Widget
- Overlay Troubleshooting
- Some Background on Visuals
- Using the Visual Info Extension
- Using the Visual Rating Extension
- and multisampling
- Using the Multisample Extension
- Using the Multisample Extension
- using FBConfig instead
- Using Framebuffer Configurations
- GLXContext
- Rendering Contexts
- glXCopyContext()
- Portability
- glXCreateContext()
- Creating a Rendering Context
- FBConfig Constructs
- glXCreateGLXPbufferSGIX()
- Related Functions
- glXCreateGLXPixmap()
- FBConfig Constructs
- Creating and Using Pixmaps
- glXCreateGLXPixmapWithConfigSGIX()
- Related Functions
- glXCreateNewContext()
- FBConfig Constructs
- Related Functions
- glXCreatePbuffer()
- Creating a Pbuffer
- Related Functions
- glXCreatePixmap()
- FBConfig Constructs
- glXCreateWindow()
- FBConfig Constructs
- Related Functions
- glXDestroyGLXPbufferSGIX()
- Related Functions
- glXDestroyPbuffer()
- Rendering to a Pbuffer
- Related Functions
- GLXFBConfig
- Describing a Drawable With a GLXFBConfig Construct (FBConfig)
- FBConfig Constructs
- attributes
- FBConfig Constructs
- how selected
- How an FBConfig Is Selected
- glXFreeContextEXT()
- New Functions
- glXFreeGLXContext()
- Importing a Context
- glXGetConfig()
- Some Background on Visuals
- glXGetContextIDEXT()
- New Functions
- glXGetCurrentDisplayEXT()
- Retrieving Display and Context Information
- New Functions
- glXGetCurrentReadDrawable()
- SGI_make_current_read—The Make Current Read Extension
- glXGetCurrentReadDrawableSGI()
- New Functions
- glXGetFBConfigAttrib()
- FBConfig Constructs
- FBConfig Constructs
- Related Functions
- glXGetFBConfigAttribSGIX()
- How an FBConfig Is Selected
- glXGetFBConfigs()
- FBConfig Constructs
- Related Functions
- glXGetGLXContextIDEXT()
- Importing a Context
- glXGetGLXPbufferConfigSGIX()
- Related Functions
- glXGetGLXPbufferStatusSGIX()
- Related Functions
- glXGetLargestGLXPbufferSGIX()
- Related Functions
- glXGetProcAddressARB()
- ARB_get_proc_address—The Dynamic Query-Function-Pointer Extension
- glXGetSelectedEvent()
- Related Functions
- glXGetVideoSyncSGI()
- Using the Video Sync Extension
- New Functions
- glXGetVisualFromFBConfig()
- FBConfig Constructs
- Related Functions
- glXImportContextEXT()
- New Functions
- glXImportGLXContextEXT()
- Importing a Context
- Importing a Context
- glxinfo
- GLX and Overloaded Visuals
- glxinfo utility
- glxinfo—The glx Information Utility
- glXJoinSwapGroupSGIX()
- Why Use the Swap Group Extension?
- glXMakeContextCurrent()
- SGI_make_current_read—The Make Current Read Extension
- glXMakeCurrent()
- Binding the Context to the Window
- Using Drawing-Area Widget Callbacks
- Less-Rigid Similarity Requirements When Matching Context and Drawable
- glXMakeCurrentReadSGI()
- SGI_make_current_read—The Make Current Read Extension
- New Functions
- glXMakeCurrentSGI()
- See also MakeCurrentReadSGI extension
- Read and Write Drawables
- GLXPbuffers
- Using Pixel Buffers
- glXQueryChannelRectSGIX()
- New Functions
- glXQueryContextInfoEXT()
- Retrieving Display and Context Information
- New Functions
- glXQueryDrawable()
- Rendering to a Pbuffer
- Creating a Pbuffer
- Related Functions
- glXQueryExtension()
- Opening the X Display
- Opening the X Display
- glXQueryExtensionsString()
- Checking for GLX Extension Availability
- glXSelectEvent()
- Directing the Buffer Clobber Event
- Related Functions
- glXSwapBuffers()
- Swapping Buffers
- Creating a Pbuffer
- Achieving Accurate Timing Measurements
- Mixing Computation With Graphics
- and tuning animations
- Optimizing Frame Rate Performance
- glXSwapIntervalSGI()
- SGI_swap_control—The Swap Control Extension
- New Functions
- glXUseFont()
- OpenGL and X: Examples
- glXUseXFont()
- Using Fonts and Strings
- glXWaitGL()
- Performance Considerations for X and OpenGL
- glXWaitVideoSyncSGI()
- Using the Video Sync Extension
- New Functions
- glXWaitX()
- Performance Considerations for X and OpenGL
- glyphs
- Using Fonts and Strings
- Gnome Toolkit (GTK)
- Porting Applications between IRIX and Linux
- Gouraud shading
- Using Expensive Per-Fragment Operations Efficiently
- GrayScale visuals
- Some Background on Visuals
- Less-Rigid Match of GLX Visual and X Visual
- Using the Visual Info Extension
- ground plane
- Mixing Computation With Graphics
- grouping primitives
- Using Peak-Performance Primitives for Drawing
- GTK
- Porting Applications between IRIX and Linux
- Widgets and the Xt Library
- halo effects
- Why Use Occlusion Queries?
- hardware configuration
- System-Specific Tuning
- header
- for OpenGL, GLU, GLX
- Compiling With the GLX Extension
- hierarchy
- data organization
- Optimizing the Data Organization
- memory
- Memory Organization
- high-performance drawing
- Tuning the Geometry Subsystem
- hints
- GL_NICEST smooth hint
- Multisampled Points
- hinv command
- Minimizing Cache Misses
- histogram extension
- EXT_histogram—The Histogram and Minmax Extensions
- example
- Using the Histogram Extension
- using proxy histograms
- Using Proxy Histograms
- histogram normalization
- SGIX_texture_scale_bias—The Texture Scale Bias Extension
- history file
- ogldebug Overview
- hot spots
- About Pipeline Tuning
- identity matrix
- Tuning the Imaging Pipeline
- if-else-if statements
- Examples for Optimizing Program Structure
- imaging extensions
- Imaging Extensions
- imaging pipeline
- Introduction to Imaging Extensions
- location of color table
- Lookup Tables in the Image Pipeline
- overview
- Convolution, Histogram, and Color Table in the Pipeline
- tuning
- Tuning the Imaging Pipeline
- immediate mode
- contrasted with display lists
- Immediate Mode Drawing Versus Display Lists and Vertex Buffer Objects
- machine dependencies
- Using libisfast
- tuning
- CPU Tuning: Immediate Mode Drawing
- ImmediateModeIsFast()
- Using libisfast
- Using libisfast
- import context extension
- EXT_import_context—The Import Context Extension
- shareable information
- Importing a Context
- include files for OpenGL and X
- Compiling With the GLX Extension
- indirect rendering
- Direct and Indirect Rendering
- pbuffers
- PBuffers and Pixmaps
- indirect rendering contexts
- sharing with import context
- EXT_import_context—The Import Context Extension
- InfiniteReality systems
- clipmaps
- SGIX_clipmap—The Clipmap Extension
- display lists
- Miscellaneous Performance Hints
- pbuffers
- Offscreen Rendering and Framebuffer Management
- Miscellaneous Performance Hints
- performance tuning
- Optimizing Performance on InfiniteReality Systems
- sprite extension
- SGIX_sprite—The Sprite Extension
- texture select extension
- Why Use the Texture Select Extension?
- texture subimages
- Managing Textures on InfiniteReality Systems
- textures
- Managing Textures on InfiniteReality Systems
- inheritance issues
- Inheritance Issues
- init callback
- Using Drawing-Area Widget Callbacks
- init() callback
- Mapping the Window
- input callbacks
- Using Drawing-Area Widget Callbacks
- Using Drawing-Area Widget Callbacks
- Using the Input Callback
- Creating Overlays
- example
- Using the Input Callback
- private state
- Background Information
- when called
- Using the Input Callback
- input disappears
- Keyboard Input Disappears
- input events
- and overlays
- Overlay Troubleshooting
- input extension (X)
- Xlib Event Handling
- input handling
- Input Handling With Widgets and Xt
- Background Information
- actions and translations
- Background Information
- instruments extension
- SGIX_instruments—The Instruments Extension
- Intel Itanium CPUs
- Differences Between Onyx4 and Silicon Graphics Prism Systems
- interlace extension
- SGIX_interlace—The Interlace Extension
- interleaving computation with graphics
- Mixing Computation With Graphics
- internal formats
- texture select
- Why Use the Texture Select Extension?
- Intrinsics
- Xt Library
- invalid border regions
- Setting Up the Clipmap Stack
- invalid borders
- Invalid Borders
- IRIS IM
- Using OpenGL with the X Window System
- and Xt
- Xt Library
- example program
- Simple Motif Example Program
- integrating with OpenGL
- Integrating Your OpenGL Program With IRIS IM
- keyboard traversal
- About OpenGL Drawing-Area Widgets
- troubleshooting
- Keyboard Input Disappears
- widgets
- Widgets and the Xt Library
- Xt Library
- IRIS IM widget set
- IRIS IM Widget Set
- Porting Applications between IRIX and Linux
- IRIS ViewKit
- IRIS ViewKit
- Porting Applications between IRIX and Linux
- IRIX Interactive Desktop
- Widgets and the Xt Library
- IRIX Interactive Desktop environment
- Using OpenGL with the X Window System
- IsFastOpenXDisplay()
- Using libisfast
- key bindings
- Using Actions and Translations
- keyboard focus
- Keyboard Input Disappears
- keyboard traversal
- About OpenGL Drawing-Area Widgets
- Keyboard Input Disappears
- keyboards
- virtual key bindings
- Using Actions and Translations
- KIL instruction
- Fragment Program Instructions
- Lagrange interpolation (filter4 parameters extension)
- SGIS_filter4_parameters—The Filter4 Parameters Extension
- lens flare
- Why Use Occlusion Queries?
- level of detail (LOD)
- Background: Texture Maps and LODs
- LG2 instruction
- Fragment and Vertex Program Instructions
- libisfast
- Libraries for Benchmarking
- Using libisfast
- libpdb
- Libraries for Benchmarking
- libraries
- how to link
-
Link Lines for Individual Libraries
- OpenGL and X
- Compiling With the GLX Extension
- light points
- The Point Parameters Extension
- lighting
- and material parameters
- Lighting Operations With Noticeable Performance Costs
- debugging
- Lighting Problems
- nonlocal viewing
- Optimizing Lighting Performance
- optimizing
- Optimizing Lighting Performance
- performance penalty of advanced features
- Optimizing Lighting Performance
- shininess
- Lighting Operations With Noticeable Performance Costs
- single-sided
- Optimizing Lighting Performance
- lighting, per-pixel
- Why Use Texture Combiners?
- line strips
- Using Peak-Performance Primitives for Drawing
- linear filtering
- Background: Texture Maps and LODs
- link lines
-
Link Lines for Individual Libraries
- OpenGL and X
-
Link Lines for Individual Libraries
- list priority extension
- SGIX_list_priority—The List Priority Extension
- LIT instruction
- Fragment and Vertex Program Instructions
- load monitoring with instruments
- Why Use SGIX_instruments?
- loading
- optimizing
- Tuning the Imaging Pipeline
- location of example programs
- Example Programs
- location of example source code
- Location of Example Source Code (IRIX-Specific)
- location of specifications
- Example Programs
- LOD
- Background: Texture Maps and LODs
- clipmaps
- SGIX_clipmap—The Clipmap Extension
- multisampling
- Using a Multisample Mask to Fade Levels of Detail
- specifying minimum/maximum level
- Specifying a Minimum or Maximum Level of Detail
- texture LOD bias extension
- SGIX_texture_lod_bias—The Texture LOD Bias Extension
- texture LOD extension
- SGIS_texture_lod—The Texture LOD Extension
- LOD extrapolation function
- Customizing the LOD Extrapolation Function
- LOD interpolation curve
- Customizing the Detail Function
- LOG instruction
- Vertex Program Instructions
- lookup tables
- pixel texture
- SGIX_pixel_texture—The Pixel Texture Extension
- loops
- accessing buffers
- Examples for Optimizing Program Structure
- for benchmarking
- Achieving Accurate Timing Measurements
- optimizing
- Examples for Optimizing Program Structure
- Examples for Optimizing Program Structure
- unrolling
- Examples for Optimizing Program Structure
- LRP instruction
- Fragment Program Instructions
- Mac OS X window system
- Using OpenGL with the X Window System
- machine configuration
- System-Specific Tuning
- macros
- Using Specialized Drawing Subroutines and
Macros
- MAD instruction
- Fragment and Vertex Program Instructions
- magnification filters
- detail texture
- Creating a Detail Texture and a Low-Resolution Texture
- sharpen texture
- How to Use the Sharpen Texture Extension
- magnification of textures
- SGIS_sharpen_texture—The Sharpen Texture Extension
- make current read extension
- SGI_make_current_read—The Make Current Read Extension
- mapping windows
- Mapping the Window
- masks
- multisample mask
- Using a Multisample Mask to Fade Levels of Detail
- material parameters
- Lighting Operations With Noticeable Performance Costs
- MAX instruction
- Fragment and Vertex Program Instructions
- maximum intensity projection (MIP)
- Minmax Blending Extension
- maxlod
- Virtual Clipmaps
- memory
- limitations with display lists
- Immediate Mode Drawing Versus Display Lists and Vertex Buffer Objects
- optimizing display lists
- CPU Tuning: Display Lists
- paging
- Memory Organization
- paging caused by hierarchical data structures
- Optimizing the Data Organization
- savings using several visuals
- Running OpenGL Applications Using a Single Visual
- structure of
- Memory Organization
- menus
- GLwMDrawingArea widget
- Using Popup Menus With the GLwMDrawingArea Widget
- multi-visual applications
- Running OpenGL Applications Using a Single Visual
- meshes
- Preprocessing Drawing Data (Meshes and Vertex Loops)
- Microsoft Windows
- Using OpenGL with the X Window System
- Portability
- MIN instruction
- Fragment and Vertex Program Instructions
- minimizing cache misses
- Minimizing Cache Misses
- minmax blending extension
- Minmax Blending Extension
- minmax extension
- Using the Minmax Part of the Histogram Extension
- mipmapping
- EXT_texture_filter_anisotropic—The Anisotropic Texture Filtering Extension
- Using 3D Textures
- and texture LOD bias extension
- Background: Texture Maps and LODs
- texture LOD extension
- SGIS_texture_lod—The Texture LOD Extension
- mipmapping See Also texture filter4 extension
- SGIS_texture_filter4—The Texture Filter4 Extensions
- mipmaps and clipmaps
- Clipmap Overview
- MIPS CPUs
- Differences Between Onyx4 and Silicon Graphics Prism Systems
- -mips3
- CPU Tuning: Basics
- Mitchell-Netravali scheme (filter4 parameters extension)
- SGIS_filter4_parameters—The Filter4 Parameters Extension
- mode settings
- Benchmarking Basics
- model view matrix and sprite extension
- SGIX_sprite—The Sprite Extension
- monitor positions
- Configuring Monitor Positions
- monitor types (digital and analog)
- Configuring Monitor Types
- MonitorLayout
- Configuring Monitor Types
- Motif
- Using OpenGL with the X Window System
- and Xt
- Xt Library
- See also IRIS IM, widgets
- Simple Motif Example Program
- motif/simplest.c example program
- Simple Motif Example Program
- mouse events
- Using the Input Callback
- Handling Mouse Events
- MOV instruction
- Fragment and Vertex Program Instructions
- MUL instruction
- Fragment and Vertex Program Instructions
- multipass multisampling
- Accumulating Multisampled Images
- Accumulating Multisampled Images
- multiple colormaps
- Multiple Colormap Issues
- multiple processes
- Minimizing Cache Misses
- multiple processors
- Using Additional Processors for Complex Scene Management
- multiple processors and sprite extension
- SGIX_sprite—The Sprite Extension
- multiple visuals
- Running OpenGL Applications Using a Single Visual
- multisample extension
- The Multisample Extension
- multisample mask
- Using a Multisample Mask to Fade Levels of Detail
- multisample points and GL_POINT_FADE_THRESHOLD_SIZE_SGIS
- The Point Parameters Extension
- multisampling
- The Multisample Extension
- advanced options
- Using Advanced Multisampling Options
- and blending
- Using Advanced Multisampling Options
- choosing visual
- Using the Multisample Extension
- comparative performance cost
- Using Expensive Per-Fragment Operations Efficiently
- defining mask
- Using a Multisample Mask to Fade Levels of Detail
- GL_LINE_SMOOTH
- Multisampled Lines
- introduction
- Introduction to Multisampling
- multipass multisampling
- Accumulating Multisampled Images
- Accumulating Multisampled Images
- points
- Multisampled Points
- polygons
- Multisampled Polygons
- screen-door transparency
- Color Blending and Screen Door Transparency
- when to use
- When to Use Multisampling
- n32 ABI
- CPU Tuning: Basics
- Nearest-neighbor filtering
- Background: Texture Maps and LODs
- nonclipped level
- Why Do the Clipmap Constraints Work?
- nonlocal viewing
- Optimizing Lighting Performance
- NURBS object
- callback
- Using the NURBS Tessellator Extension
- NURBS tessellator extension
- GLU_EXT_NURBS_tessellator—The NURBS Tessellator Extension
- NV_point_sprite extension
- NV_point_sprite—The Point Sprite Extension
- NV_texgen_reflection extension
- The Texture Coordinate Generation Extensions (Legacy)
- O2 compiler option
- CPU Tuning: Basics
- o32 ABI
- CPU Tuning: Basics
- objdump command
- Examining Assembly Code
- object space tess extension
- GLU_EXT_object_space—The Object Space Tess Extension
- occlusion queries
- Why Use Occlusion Queries?
- ogldebug
- configuration file
- Using a Configuration File
- File menu
- Using the File Menu to Interact With ogldebug
- Options menu
- Using the Commands Menu to Interact With Your Program
- References menu
- Using the References Menu for Background Information
- setup
- Setting Up ogldebug
- trace file
- Creating a Trace File to Discover OpenGL Problems
- ogldebug debugging tool
- Debugging Your Program
- ogldebug tool
- ogldebug—The OpenGL Debugger
- OglExt, extension wrapper library
- Extension Wrapper Libraries and Portability Notes
- one-dimensional arrays
- Examples for Optimizing Data Structures for Drawing
- Open Inventor
- Open Inventor
- OpenGL
- coordinate system
- X Window System Problems
- header
- Compiling With the GLX Extension
- include files
- Compiling With the GLX Extension
- integrating with IRIS IM
- Integrating Your OpenGL Program With IRIS IM
- rendering mode
- Some Background on Visuals
- speed considerations with X
- Mapping the Window
- visual
- GLX and Overloaded Visuals
- OpenGL Performer
- Maximizing Performance With OpenGL Performer
- SGIX_clipmap—The Clipmap Extension
- OpenGL Performer API
- swap barrier
- Why Use the Swap Barrier Extension?
- OpenGL state parameters
- OpenGL State Parameters
- OpenGL, version support
- System Support for OpenGL Versions and Extensions
- opening X displays
- Opening the X Display
- optimizing
- compilation
- CPU Tuning: Basics
- concave polygons
- Using Peak-Performance Primitives for Drawing
- conditional statements
- Examples for Optimizing Program Structure
- database by preprocessing
- Preprocessing Drawing Data (Meshes and Vertex Loops)
- database traversal
- Optimizing Database Rendering Code
- depth buffering
- Using Depth Buffering Efficiently
- display lists
- CPU Tuning: Display Lists
- drawing
- Tuning the Geometry Subsystem
- frame rates
- Optimizing Frame Rate Performance
- glDrawPixels()
- Drawing Pixels Fast
- lighting
- Optimizing Lighting Performance
- loading
- Tuning the Imaging Pipeline
- loops
- Examples for Optimizing Program Structure
- pixel drawing
- Drawing Pixels Fast
- rendering data
- Optimizing the Data Organization
- rendering loops
- Optimizing Database Rendering Code
- Options menu (ogldebug)
- Using the Commands Menu to Interact With Your Program
- OSF/Motif
- Using OpenGL with the X Window System
- and Xt
- Xt Library
- See also widgets, IRIS IM.
- Widgets and the Xt Library
- osview
- Isolating Bottlenecks in Your Application: Overview
- Achieving Accurate Timing Measurements
- Minimizing Lookups
- Measuring Cache-Miss and Page-Fault Overhead
- overlay planes
- enabling
- Enabling Overlay Planes
- overlays
- Using Overlays
- Introduction to Overlays
- clipped
- Overlay Troubleshooting
- colormaps
- Overlay Troubleshooting
- GLwMDrawingArea widget
- Introduction to Overlays
- input events
- Overlay Troubleshooting
- transparency
- Introduction to Overlays
- troubleshooting
- Overlay Troubleshooting
- using XRaiseWindow()
- Creating Overlays
- window hierarchy
- Overlay Troubleshooting
- overloaded visuals
- GLX and Overloaded Visuals
- packed pixels extension
- EXT_packed_pixels—The Packed Pixels Extension
- pixel types
- Using Packed Pixels
- paging
- Memory Organization
- parameters determining performance
- Benchmarking Basics
- pbuffers
- GLX Drawables—Windows and Pixmaps
- Using Pixel Buffers
- and GLXFBConfig
- FBConfig Constructs
- direct rendering
- PBuffers and Pixmaps
- indirect rendering
- PBuffers and Pixmaps
- on InfiniteReality systems
- Offscreen Rendering and Framebuffer Management
- Miscellaneous Performance Hints
- preserved
- Volatile and Preserved Pbuffers
- rendering
- Using Pixmaps
- volatile
- Volatile and Preserved Pbuffers
- PC sampling
- Measuring Cache-Miss and Page-Fault Overhead
- PCI-X interface
- Differences Between Onyx4 and Silicon Graphics Prism Systems
- pdb routines
- Libraries for Benchmarking
- PDB_ALREADY_OPEN error
- Using libpdb
- PDB_CANT_WRITE error
- Using libpdb
- PDB_NOT_FOUND error
- Using libpdb
- PDB_NOT_OPEN error
- Using libpdb
- PDB_OUT_OF_MEMORY error
- Using libpdb
- PDB_SYNTAX_ERROR error
- Using libpdb
- pdbClose()
- Using libpdb
- pdbMeasureRate()
- Example for pdbReadRate()
- pdbOpen()
- Using libpdb
- Using libpdb
- pdbWriteRate()
- Example for pdbMeasureRate()
- perf.c discussion
- Tuning Example
- perf.c example program
- Benchmarks
- performance
- clearing bitplanes
- Using Clear Operations
- determining parameters
- Benchmarking Basics
- estimates
- Benchmarking Basics
- Achieving Accurate Benchmarking Results
- InfiniteReality systems
- Optimizing Performance on InfiniteReality Systems
- influencing factors
- Factors Influencing Performance
- instruments
- SGIX_instruments—The Instruments Extension
- measurements
- SGIX_instruments—The Instruments Extension
- Onyx4 systems
- Optimizing Performance on Onyx4 and Silicon Graphics Prism Systems
- penalties with lighting
- Optimizing Lighting Performance
- Silicon Graphics Prism systems
- Optimizing Performance on Onyx4 and Silicon Graphics Prism Systems
- Performance DataBase(pdb) routines
- Libraries for Benchmarking
- per-fragment operations
- efficient use
- Using Expensive Per-Fragment Operations Efficiently
- per-pixel operations
- Isolating Bottlenecks in Your Application: Overview
- per-polygon operations
- finding bottlenecks
- Isolating Bottlenecks in Your Application: Overview
- pipeline
- 3-stage model
- A Three-Stage Model of the Graphics Pipeline
- CPU stage
- A Three-Stage Model of the Graphics Pipeline
- performance factors
- Factors Influencing Performance
- raster subsystem
- Isolating Bottlenecks in Your Application: Overview
- tuning
- About Pipeline Tuning
- pipeline programs
- Vertex and Fragment Program Extensions
- pixel buffers
- GLX Drawables—Windows and Pixmaps
- Using Pixel Buffers
- pixel path tuning
- Tuning the Imaging Pipeline
- pixel raster position
- ARB_window_pos—The Window-Space Raster Position Extension
- pixel storage modes
- Using 3D Textures
- EXT_packed_pixels—The Packed Pixels Extension
- and import context
- Importing a Context
- pixel texture extension
- SGIX_pixel_texture—The Pixel Texture Extension
- pixel types using packed pixels
- Using Packed Pixels
- pixels
- optimizing drawing
- Drawing Pixels Fast
- transparent
- EXT_visual_info—The Visual Info Extension
- pixmaps
- Using Pixmaps
- Creating and Using Pixmaps
- and exposing windows
- Exposing a Window
- and GLXFBConfig
- Describing a Drawable With a GLXFBConfig Construct (FBConfig)
- FBConfig Constructs
- and pbuffer
- PBuffers and Pixmaps
- as resources
- Resources As Server Data
- exposing windows
- Exposing a Window
- rendering
- Using Pixmaps
- See also X pixmaps, GLX pixmaps.
- Creating and Using Pixmaps
- planes
- overlay
- Using Overlays
- point parameter extension
- The Point Parameters Extension
- point sprites
- NV_point_sprite—The Point Sprite Extension
- points
- and multisampling
- Multisampled Points
- GL_NICEST smooth hint
- Multisampled Points
- polling instruments
- Retrieving Information
- polygons
- grouping primitives
- Using Peak-Performance Primitives for Drawing
- influencing performance
- Benchmarking Basics
- large
- Mixing Computation With Graphics
- multisampling
- Multisampled Polygons
- optimizing
- Examples for Optimizing Program Structure
- Modeling to the Graphics Pipeline
- optimizing large polygons
- Using Depth Buffering Efficiently
- optimum size
- Balancing Polygon Size and Pixel Operations
- reducing number in example program
- Reducing the Number of Polygons
- popup menus
- Rubber Banding
- code fragment
- Using Popup Menus With the GLwMDrawingArea Widget
- GLwMDrawingArea widget
- Rubber Banding
- porting, windowing systems
- Portability
- POW instruction
- Fragment and Vertex Program Instructions
- preprocessing
- introduction
- Preprocessing Drawing Data (Meshes and Vertex Loops)
- meshes
- Preprocessing Drawing Data (Meshes and Vertex Loops)
- vertex loops
- Preprocessing Drawing Data (Meshes and Vertex Loops)
- preserved pbuffer
- Volatile and Preserved Pbuffers
- buffer clobber event
- Directing the Buffer Clobber Event
- prof sample output
- Using the Profiler
- profiler
- Using the Profiler
- projection matrix debugging
- Blank Window
- prototyping subroutines
- in ANSI C
- Examples for Optimizing Program Structure
- proxy mechanism
- proxy histograms
- Using Proxy Histograms
- proxy textures
- Using 3D Textures
- PseudoColor visuals
- Some Background on Visuals
- Less-Rigid Match of GLX Visual and X Visual
- Choosing Which Colormap to Use
- Qt toolkit
- Porting Applications between IRIX and Linux
- Widgets and the Xt Library
- quad strips
- Using Peak-Performance Primitives for Drawing
- QUAD* formats
- Using the Texture Select Extension
- quad-buffered stereo
- Stereo Rendering Background Information
- raster subsystem. See fill-limited code.
- Isolating Bottlenecks in Your Application: Overview
- RCP instruction
- Fragment and Vertex Program Instructions
- read drawable
- Read and Write Drawables
- rectangle textures
- Why Use Rectangle Textures?
- References menu (ogldebug)
- Using the References Menu for Background Information
- refresh rate of screen
- How Frame Rate Determines Animation Speed
- remote rendering
- advantage of display lists
- Immediate Mode Drawing Versus Display Lists and Vertex Buffer Objects
- data traversal
- Immediate Mode Drawing Versus Display Lists and Vertex Buffer Objects
- removing backfacing polygons
- Using Backface/Frontface Removal
- rendering
- direct and indirect
- Direct and Indirect Rendering
- optimizing data
- Optimizing the Data Organization
- optimizing loops
- Optimizing Database Rendering Code
- rendering contexts
- creating
- Creating a Rendering Context
- Creating a Rendering Context
- definition
- Rendering Contexts
- rendering extensions
- Rendering Extensions
- resize callback
- Using Drawing-Area Widget Callbacks
- Using Drawing-Area Widget Callbacks
- Creating Overlays
- resource extensions
- Resource Control Extensions
- Resource Manager
- Resources As Server Data
- resources
- Resources As Server Data
- Setting Up Fallback Resources
- definition
- Resources As Server Data
- fallback
- Setting Up Fallback Resources
- widget properties
- Setting Up Fallback Resources
- RGBA mode
- Background Information About Colormaps
- and GLXFBConfig
- Less-Rigid Match of GLX Visual and X Visual
- rotation problems
- Rotation and Translation Problems
- RSQ instruction
- Fragment and Vertex Program Instructions
- rubber banding
- Rubber Banding
- RunTest()
- Tuning Example
- S3TC texture formats
- EXT_texture_compression_s3tc—The S3 Compressed Texture Format Extension
- sample code (See example programs .)
- Sample Code
- scene graph
- CPU Tuning: Basics
- Optimizing the Data Organization
- screen clear and animations
- How Frame Rate Determines Animation Speed
- screen refresh time
- How Frame Rate Determines Animation Speed
- screen-door transparency
- Color Blending and Screen Door Transparency
- SCS instruction
- Fragment Program Instructions
- secondary color
- EXT_secondary_color—The Secondary Color Extension
- segmentation
- Why Use a Texture Color Table?
- separable convolution filter
- Separable and General Convolution Filters
- setmon command
- Performing Stereo Rendering
- Configuring a System for External Genlock or Framelock
- setting up ogldebug
- Setting Up ogldebug
- setting window properties
- Creating a Colormap and a Window
- SGE instruction
- Fragment and Vertex Program Instructions
- SGI_color_matrix
- SGI_color_matrix—The Color Matrix Extension
- SGI_color_table
- SGI_color_table—The Color Table Extension
- SGI_make_current_read
- SGI_make_current_read—The Make Current Read Extension
- SGI_swap_control
- SGI_swap_control—The Swap Control Extension
- SGI_texture_color_table
- SGI_texture_color_table—The Texture Color Table Extension
- SGI_video_sync
- SGI_video_sync—The Video Synchronization Extension
- SGIS_detail_texture
- SGIS_detail_texture—The Detail Texture Extension
- SGIS_filter4_parameters
- SGIS_filter4_parameters—The Filter4 Parameters Extension
- SGIS_multisample
- The Multisample Extension
- SGIS_multisample extension
- The Multisample Extension
- SGIS_point_parameters
- The Point Parameters Extension
- SGIS_sharpen_texture
- SGIS_sharpen_texture—The Sharpen Texture Extension
- SGIS_texture_border_clamp
- SGIS_texture_edge/border_clamp—Texture Clamp Extensions
- SGIS_texture_edge_clamp
- SGIS_texture_edge/border_clamp—Texture Clamp Extensions
- SGIS_texture_filter4
- SGIS_texture_filter4—The Texture Filter4 Extensions
- SGIS_texture_lod
- SGIS_texture_lod—The Texture LOD Extension
- SGIX_clipmap
- SGIX_clipmap—The Clipmap Extension
- SGIX_depth_texture extension
- The Shadow Extensions
- SGIX_fbconfig
- Using Framebuffer Configurations
- SGIX_instruments
- SGIX_instruments—The Instruments Extension
- SGIX_interlace
- SGIX_interlace—The Interlace Extension
- SGIX_list_priority
- SGIX_list_priority—The List Priority Extension
- SGIX_pixel_texture
- SGIX_pixel_texture—The Pixel Texture Extension
- SGIX_shadow extension
- The Shadow Extensions
- SGIX_shadow_ambient extension
- The Shadow Extensions
- SGIX_sprite
- SGIX_sprite—The Sprite Extension
- SGIX_swap_barrier
- SGIX_swap_barrier—The Swap Barrier Extension
- SGIX_swap_group
- SGIX_swap_group—The Swap Group Extension
- SGIX_texture_add_env
- SGIX_texture_add_env—The Texture Environment Add Extension
- SGIX_texture_lod_bias
- SGIX_texture_lod_bias—The Texture LOD Bias Extension
- SGIX_texture_scale_bias
- SGIX_texture_scale_bias—The Texture Scale Bias Extension
- SGIX_texture_select
- SGIS_texture_select—The Texture Select Extension
- SGIX_video_resize
- SGIX_video_resize—The Video Resize Extension
- shading
- Using Expensive Per-Fragment Operations Efficiently
- Smooth Shading Versus Flat Shading
- shadow extensions
- The Shadow Extensions
- sharing resources
- Resources As Server Data
- sharpen texture extension
- SGIS_sharpen_texture—The Sharpen Texture Extension
- customizing
- Customizing the LOD Extrapolation Function
- example program
- Sharpen Texture Example Program
- magnification filters
- How to Use the Sharpen Texture Extension
- sheared image
- Pixel and Texture Write Problems
- simple lighting model
- Optimizing Lighting Performance
- SIN instruction
- Fragment Program Instructions
- single-buffer mode
- Optimizing Frame Rate Performance
- single-channel visuals
- FBConfig Constructs
- single-sided lighting
- Optimizing Lighting Performance
- SLT instruction
- Fragment and Vertex Program Instructions
- smoke
- Modeling to the Graphics Pipeline
- smooth shading
- Smooth Shading Versus Flat Shading
- source code for examples
- Location of Example Source Code (IRIX-Specific)
- specification location
- Example Programs
- specifying minimum/maximum LOD
- Specifying a Minimum or Maximum Level of Detail
- speed considerations
- Mapping the Window
- sphere example
- Tuning Example
- sprite extension
- SGIX_sprite—The Sprite Extension
- and multiple processors
- SGIX_sprite—The Sprite Extension
- stack trace
- Inheritance Issues
- StaticColor visuals
- Some Background on Visuals
- Less-Rigid Match of GLX Visual and X Visual
- Using the Visual Info Extension
- StaticGray visuals
- Some Background on Visuals
- Less-Rigid Match of GLX Visual and X Visual
- Using the Visual Info Extension
- stencil buffers
- ATI_separate_stencil—The Separate Stencil Extension
- StencillingIsFast()
- Using libisfast
- stereo images
- congfiguring
- Configuring a System for Stereo
- stereo rendering
- Stereo Rendering
- strings
- Using Fonts and Strings
- Using Fonts and Strings
- strips
- Preprocessing Drawing Data (Meshes and Vertex Loops)
- SUB instruction
- Fragment and Vertex Program Instructions
- subimage
- Creating a Detail Texture and a Low-Resolution Texture
- swap barrier extension
- SGIX_swap_barrier—The Swap Barrier Extension
- swap control extension
- SGI_swap_control—The Swap Control Extension
- swap group extension
- SGIX_swap_group—The Swap Group Extension
- swap groups, synchronizing
- SGIX_swap_barrier—The Swap Barrier Extension
- swapping buffers
- Swapping Buffers
- switch statements
- Examples for Optimizing Program Structure
- swizzling
- Program Instructions
- SWZ instruction
- Fragment and Vertex Program Instructions
- synchronizing buffer swaps
- SGIX_swap_group—The Swap Group Extension
- synchronizing swap groups
- SGIX_swap_barrier—The Swap Barrier Extension
- synchronizing video
- SGI_video_sync—The Video Synchronization Extension
- tessellation, object space
- GLU_EXT_object_space—The Object Space Tess Extension
- tessellations, retrieving
- GLU_EXT_NURBS_tessellator—The NURBS Tessellator Extension
- Test()
- Tuning Example
- TEX instruction
- Fragment Program Instructions
- text handling
- Using Fonts and Strings
- texture border clamp extension
- SGIS_texture_edge/border_clamp—Texture Clamp Extensions
- texture borders
- Managing Textures on InfiniteReality Systems
- texture color table extension
- SGI_texture_color_table—The Texture Color Table Extension
- texture combiner operations
- ATI_texture_env_combine3—New Texture Combiner Operations Extension
- texture coordinate generation
- The Texture Coordinate Generation Extensions (Legacy)
- texture edge clamp extensions
- SGIS_texture_edge/border_clamp—Texture Clamp Extensions
- texture environment add extension
- SGIX_texture_add_env—The Texture Environment Add Extension
- texture extensions
- Texturing Extensions
- texture filter4 extension
- SGIS_texture_filter4—The Texture Filter4 Extensions
- texture images
- and convolution extension
- Separable and General Convolution Filters
- texture internal formats
- texture select
- Why Use the Texture Select Extension?
- texture LOD bias extension
- SGIX_texture_lod_bias—The Texture LOD Bias Extension
- texture LOD extension
- SGIS_texture_lod—The Texture LOD Extension
- texture magnification
- SGIS_sharpen_texture—The Sharpen Texture Extension
- texture mapping
- Using libisfast
- texture memory, efficient use
- SGIS_texture_select—The Texture Select Extension
- texture objects
- and detail texture
- Using Detail Texture and Texture Object
- texture select extension
- SGIS_texture_select—The Texture Select Extension
- texture subimages on InfiniteReality
- Managing Textures on InfiniteReality Systems
- texture wrap modes
- Using 3D Textures
- texture_scale_bias extension
- SGIX_texture_scale_bias—The Texture Scale Bias Extension
- textured polygons
- Modeling to the Graphics Pipeline
- TextureMappingIsFast()
- Using libisfast
- textures
- 3D texture mapping
- EXT_texture3D—The 3D Texture Extension
- compressed formats
- EXT_texture_compression_s3tc—The S3 Compressed Texture Format Extension
- filter4 parameters extension
- SGIS_filter4_parameters—The Filter4 Parameters Extension
- floating point
- Why Use Floating Point Textures?
- interlacing
- SGIX_interlace—The Interlace Extension
- mapping
- Why Use Anisotropic Texturing?
- mirroring
- Why Use Texture Mirroring?
- on InifiniteReality systems
- Managing Textures on InfiniteReality Systems
- optimizing
- Choosing Modes Wisely
- rectangle textures
- Why Use Rectangle Textures?
- switching
- Choosing Modes Wisely
- texture coordinate wrap modes
- ATI_texture_mirror_once—The Texture Mirroring Extension
- texture filter4 extension
- SGIS_texture_filter4—The Texture Filter4 Extensions
- texture LOD extension
- SGIS_texture_lod—The Texture LOD Extension
- texturing
- Using Expensive Per-Fragment Operations Efficiently
- See also textures
- Using Expensive Per-Fragment Operations Efficiently
- texturing extensions
- Texturing Extensions
- three-stage model of the graphics pipeline
- A Three-Stage Model of the Graphics Pipeline
- tiles
- Moving the Clip Center
- timing
- background processes
- Achieving Accurate Timing Measurements
- glFinish()
- Achieving Accurate Timing Measurements
- loops
- Achieving Accurate Timing Measurements
- measurements
- Taking Timing Measurements
- Achieving Accurate Timing Measurements
- TLB
- Memory Organization
- top
- Isolating Bottlenecks in Your Application: Overview
- top-level widget
- Creating the Widgets
- toroidal loading
- Clipmap Textures and Plain Textures
- Updating the Clipmap Stack
- Moving the Clip Center
- Toroidal Loading
- trace file
- ogldebug Overview
- trace files
- Creating a Trace File to Discover OpenGL Problems
- transform rate
- Benchmarking Basics
- transform-limited code
- finding bottlenecks
- Isolating Bottlenecks in Your Application: Overview
- tuning
- Tuning the Geometry Subsystem
- translation-lookaside buffer. See TLB.
- Memory Organization
- translations. See actions and translations.
- Using Actions and Translations
- transparency
- Other Considerations
- in overlays
- Introduction to Overlays
- transparent pixels
- Creating a Colormap and a Window
- EXT_visual_info—The Visual Info Extension
- traversal
- About OpenGL Drawing-Area Widgets
- Keyboard Input Disappears
- remote rendering
- Immediate Mode Drawing Versus Display Lists and Vertex Buffer Objects
- traversal of data
- CPU Tuning: Basics
- triangle fans
- Using Peak-Performance Primitives for Drawing
- triangle strips
- Preprocessing Drawing Data (Meshes and Vertex Loops)
- Using Peak-Performance Primitives for Drawing
- troubleshooting
- IRIS IM input disappears
- Keyboard Input Disappears
- overlays
- Overlay Troubleshooting
- widgets
- Widget Troubleshooting
- TrueColor visuals
- Installing the Colormap
- Some Background on Visuals
- Less-Rigid Match of GLX Visual and X Visual
- Choosing Which Colormap to Use
- tuning
- advanced
- CPU Tuning: Advanced Techniques
- animations
- Tuning Animation
- clear
- Mixing Computation With Graphics
- display lists
- CPU Tuning: Display Lists
- examining assembly code
- Examining Assembly Code
- example program
- Tuning Example
- fundamentals
- Tuning Graphics Applications: Fundamentals
- immediate mode
- CPU Tuning: Immediate Mode Drawing
- pipeline
- About Pipeline Tuning
- pixel path
- Tuning the Imaging Pipeline
- reducing frame rate
- How Frame Rate Determines Animation Speed
- single-buffer mode
- Optimizing Frame Rate Performance
- transform-limited code
- Tuning the Geometry Subsystem
- using textured polygons
- Modeling to the Graphics Pipeline
- tuning with instruments
- Why Use SGIX_instruments?
- TXB instruction
- Fragment Program Instructions
- TXP instruction
- Fragment Program Instructions
- underlay planes
- Introduction to Overlays
- unrolling
- Examples for Optimizing Program Structure
- Preprocessing Drawing Data (Meshes and Vertex Loops)
- updating clipmap stack
- Updating the Clipmap Stack
- using Xlib
- Using Xlib
- vertex array objects
- The Vertex Array Object Extensions (Legacy)
- vertex arrays
- Using Vertex Arrays
- vertex arrays, compiled
- EXT_compiled_vertex_array—The Compiled Vertex Array Extension
- vertex attribute aliasing
- Attribute Aliasing
- vertex buffer objects
- ARB_vertex_buffer_object—The Vertex Buffer Object Extension
- vertex loops
- preprocessing
- Preprocessing Drawing Data (Meshes and Vertex Loops)
- vertex programs
- Vertex and Fragment Program Extensions
- vertical retrace
- How Frame Rate Determines Animation Speed
- Mixing Computation With Graphics
- video
- interlace extension
- SGIX_interlace—The Interlace Extension
- stereo rendering
- Stereo Rendering
- video extensions
- Video Extensions
- video resize extension
- SGIX_video_resize—The Video Resize Extension
- video sync extension
- SGI_video_sync—The Video Synchronization Extension
- virtual clipmaps
- Virtual Clipmaps
- virtual key bindings
- Using Actions and Translations
- virtual offset
- Virtual Clipmaps
- visual info extension
- EXT_visual_info—The Visual Info Extension
- used in overlay example
- Creating Overlays
- visual rating extension
- EXT_visual_rating—The Visual Rating Extension
- visuals
- Some Background on Visuals
- Some Background on Visuals
- and colormaps
- Creating a Colormap and a Window
- and contexts
- Less-Rigid Similarity Requirements When Matching Context and Drawable
- choosing
- Using Visuals and Framebuffer Configurations
- colormaps
- Some Background on Visuals
- definition
- GLX and Overloaded Visuals
- GLX and Overloaded Visuals
- for multisampling
- Using the Multisample Extension
- gray scale
- Using the Visual Info Extension
- memory savings
- Running OpenGL Applications Using a Single Visual
- mutiple-visual applications
- Running OpenGL Applications Using a Single Visual
- OpenGL visual
- GLX and Overloaded Visuals
- overloaded
- GLX and Overloaded Visuals
- selecting
- Selecting a Visual
- single-channel
- FBConfig Constructs
- single-visual applications
- Running OpenGL Applications Using a Single Visual
- static color
- Using the Visual Info Extension
- static gray
- Using the Visual Info Extension
- visual info extension
- EXT_visual_info—The Visual Info Extension
- volatile pbuffers
- Volatile and Preserved Pbuffers
- buffer clobber event
- Directing the Buffer Clobber Event
- volume rendering
- Why Use the 3D Texture Extension?
- and texture color table
- Why Use a Texture Color Table?
- WhitePixel color macro
- Color Variation Across Colormaps
- widget sets
- Widgets and the Xt Library
- widgets
- Widgets and the Xt Library
- callbacks
- Using Drawing-Area Widget Callbacks
- container
- Creating the Widgets
- definition
- Widgets and the Xt Library
- drawing-area
- About OpenGL Drawing-Area Widgets
- error handling
- Choosing the Visual for the Drawing-Area Widget
- form
- Creating Overlays
- frame
- Creating Overlays
- input handling
- Background Information
- IRIS IM
- Widgets and the Xt Library
- Xt Library
- mapping window
- Mapping the Window
- properties
- Setting Up Fallback Resources
- troubleshooting
- Widget Troubleshooting
- with identical characteristics
- Creating Multiple Widgets With Identical Characteristics
- XmPrimitive
- About OpenGL Drawing-Area Widgets
- window manager
- 4Dwm
- Using OpenGL with the X Window System
- window properties
- setting
- Creating a Colormap and a Window
- window systems
- Mac OS X
- Using OpenGL with the X Window System
- Microsoft Windows
- Using OpenGL with the X Window System
- X Window System
- Using OpenGL with the X Window System
- windowing systems
- Portability
- windows
- as resources
- Resources As Server Data
- mapping
- Mapping the Window
- rendering
- Using Pixmaps
- work procedures. See workprocs.
- Controlling an Animation With Workprocs
- workprocs
- Controlling an Animation With Workprocs
- Controlling an Animation With Workprocs
- adding
- General Workproc Information
- example program
- Workproc Example
- removing
- General Workproc Information
- wrap modes for textures
- Using 3D Textures
- write drawable
- Read and Write Drawables
- X
- bitmap fonts
- Using Fonts and Strings
- color macros
- Color Variation Across Colormaps
- coordinate system
- X Window System Problems
- fallback resources
- Setting Up Fallback Resources
- opening display
- Opening the X Display
- pixmaps
- Creating and Using Pixmaps
- resources
- Resources As Server Data
- speed considerations
- Mapping the Window
- X double buffering extension
- Swapping Buffers
- X extensions
- double buffering
- Swapping Buffers
- GLX
- Silicon Graphics X Servers
- X input extension
- Xlib Event Handling
- X visual See visuals
- GLX and Overloaded Visuals
- X window and channel
- Using the Video Resize Extension
- X Window System
- Using OpenGL with the X Window System
- introduction
- X Window System on Silicon Graphics Systems
- terminology
- Background and Terminology
- XCreateColormap()
- Creating a Colormap and a Window
- Creating a Colormap and a Window
- Overlay Troubleshooting
- XCreatePixmap().
- Creating and Using Pixmaps
- XCreateWindow()
- Creating a Colormap and a Window
- xdpyinfo
- GLX and Overloaded Visuals
- Some Background on Visuals
- xdpyinfo command
- Silicon Graphics X Servers
- XF86Config file
- configuring for dual-channel
- Configuring a System for Dual-Channel Operation
- configuring for external framelock
- Configuring a System for External Genlock or Framelock
- configuring for external Genlock
- Configuring a System for External Genlock or Framelock
- configuring for full-scene antialiasing
- Configuring a System for Full-Scene Antialiasing
- configuring for stereo
- Configuring a System for Stereo
- configuring monitor types
- Configuring Monitor Types
- enabling overlay planes
- Enabling Overlay Planes
- XFree()
- Using the Visual Info Extension
- XFree86 X server
- Silicon Graphics X Servers
- XGetVisualInfo()
- Selecting a Visual
- Some Background on Visuals
- XID
- Resources As Server Data
- Importing a Context
- for pbuffer
- Creating a Pbuffer
- XInstallColormap()
- Installing the Colormap
- Xlib
- Xlib Library
- colormaps
- Colormap Example
- event handling
- Handling Mouse Events
- example program
- Simple Xlib Example Program
- XMapWindow()
- Mapping the Window
- XMatchVisualInfo()
- Some Background on Visuals
- XmCreateSimplePopupMenu()
- Using Popup Menus With the GLwMDrawingArea Widget
- XmPrimitive widget
- About OpenGL Drawing-Area Widgets
- XOpenDisplay()
- Opening the X Display
- Opening the X Display
- XPD instruction
- Fragment and Vertex Program Instructions
- XRaiseWindow()
- Introduction to Overlays
- Creating Overlays
- XSetWMColormapWindows()
- Installing the Colormap
- Overlay Troubleshooting
- Multiple Colormap Issues
- Choosing Which Colormap to Use
- XSetWMProperties()
- Creating a Colormap and a Window
- Creating a Colormap and a Window
- Xsgi X server
- Silicon Graphics X Servers
- XStoreName()
- Creating a Colormap and a Window
- XSynchronize()
- Inheritance Issues
- Xt
- Xt Library
- Xt Library
- XtAddCallback()
- Using Drawing-Area Widget Callbacks
- XtAppAddWorkProc()
- General Workproc Information
- XtCreateManagedChild()
- Mapping the Window
- XtCreateManagedWidget()
- Selecting a Visual
- XtOpenApplication()
- Opening the X Display
- Opening the X Display
- Setting Up Fallback Resources
- Setting Up Fallback Resources
- XtRealizeWidget()
- Mapping the Window
- XtRemoveWorkProc()
- General Workproc Information
- z axis
- Rotation and Translation Problems
OpenGL on Silicon Graphics Systems
(document number: 007-2392-003 / published: 2005-03-31)
table of contents | additional info | download
Front Matter
New Features in This Guide
About This Guide
Chapter 1. OpenGL on Silicon Graphics Systems
Chapter 2. OpenGL and X: Getting Started
Chapter 3. OpenGL and X: Examples
Chapter 4. OpenGL and X: Advanced Topics
Chapter 5. Introduction to OpenGL Extensions
Chapter 6. Resource Control Extensions
Chapter 7. Vertex Processing Extensions
Chapter 8. Texturing Extensions
Chapter 9. Rendering Extensions
Chapter 10. Imaging Extensions
Chapter 11. Video Extensions
Chapter 12. Miscellaneous OpenGL Extensions
Chapter 13. Vertex and Fragment Program Extensions
Chapter 14. OpenGL Tools
Chapter 15. Tuning Graphics Applications: Fundamentals
Chapter 16. Tuning the Pipeline
Chapter 17. Tuning Graphics Applications: Examples
Chapter 18. System-Specific Tuning
Appendix A. Benchmarks
Appendix B. Benchmarking Libraries: libpdb and libisfast
Appendix C. System Support for OpenGL Versions and Extensions
Appendix D. XFree86 Configuration Specifics
Index
home/search |
what's new |
help
|
|
|