Index

VRML Nodes

-DIV_STRICT
Changes to Normals
Porting Applications With No Custom Classes

3-vertex polygons
Making Inventor Produce Efficient OpenGL

4-vertex polygons
Making Inventor Produce Efficient OpenGL

abstract node classes
Creating an Abstract Node Class

actions
applying
Using the Path Code
implementing
Implementing Actions
optimizing
Optimizing Action Construction and Setup
See Also doAction()
The doAction() Method
terminating
Using the Path Code

affectsState()
The affectsState() Method

Alternate group class
Alternate Node

Alternate group node
Creating a Group Node
Using New Node Classes

alternate representation
Creating an Alternate Representation

AMBIENT_MASK
How to Convert GLRender() Methods

analyzing rendering performance
Using the ivperf Utility to Analyze Rendering Performance

applications
porting
Porting Applications With No Custom Classes

applications
optimizing
Optimizing Open Inventor Applications

applying actions
Using the Path Code

automatic normal generation
Changes to Normals

automatic texture coordinate generation
Changes to Texture Coordinates

beginShape()
SoPrimitiveVertex

benchmark programs
Setting Performance Goals

bindings
DEFAULT
Changes to Normals
NONE
Changes to Normals

binding elements
Changes in Binding Elements

bitmasks
How to Convert GLRender() Methods

blended transparency
Optimizing Pixel Fill Operations

blending
How to Convert GLRender() Methods

bottlenecks
culling
Correcting Culling Bottlenecks
level of detail
Correcting Level of Detail Bottlenecks

bottlenecks
Determining Bottlenecks

bounding box
}Getting a Bounding Box

C pre-processor symbols
Inventor Revision Symbols

caching
normal bindings
Optimizing Memory Usage
turning off render caching
Optimizing Memory Usage

caching
get(n) returns the nth value in the element Element Bundles
dependencies
Implementation of Node Override
invalidation
Uncacheable Nodes
optimizing
Improving Traversal Performance
PER_FACE materials
Optimizing Memory Usage
See also uncacheable nodes
Uncacheable Nodes

callbacks
finish
Making Your Application Feel Faster
start
Making Your Application Feel Faster

callbacks
generating primitives
Generating Primitives

camera control
Using the ivperf Utility to Analyze Rendering Performance

CaseVision/Workshop Performance Analyzer
Correcting Culling Bottlenecks

child list
Child List

children
hidden
Hidden Children
traversing
Using the Path Code

classes
problems caused by changes
Incompatible API Changes

clearing windows
Correcting Window Clear Bottlenecks

clipped objects
Changes to Shape Hints

CLOCKWISE vertex ordering
Generating Normals

colors
changes
Changes to Materials and Colors
diffuse
Optimizing Memory Usage
Material Property Nodes
packed
Material Property Nodes

complexity
SCREEN_SPACE
Organizing the Scene for Caching

complexity
changes
Changes to Complexity

computeBBox()
}Getting a Bounding Box

computeCoordBBox()
}Getting a Bounding Box

constructor
abstract classes
Creating an Abstract Node Class

constructors
for actions
Optimizing Action Construction and Setup
nodes
If you try to enable two classes that share a stack index (for example, SoGLDrawStyleElement and SoDrawStyleElement), only the more derived class is actually enabled (in this case, SoGLDrawStyleElement). However, you can always use the base class static method to set or get the value for either the parent or the derived class. (You cannot, however, enable only the parent version and then try to treat it as the derived GL version.)Defining the Constructor

copy()
The copyContents() Method
copy() Method

copyContents()
copy() Method

creaseAngle default
Changes to Shape Hints

createLineDetail()
Picking

createPointDetail()
Picking

createTriangleDetail()
Picking

creating details
Creating Details

creating group classes
Creating a Group Node

creating nodes
Creating a Node

creating shape classes
Creating a Shape Node

culling
Optimizing Vertex Transformations
Optimizing Texture Management
bottlenecks
Correcting Culling Bottlenecks

current element
How to Convert GLRender() Methods

custom classes
Incompatible Extender API Changes
for performance improvement
Making Inventor Produce Efficient OpenGL
optimizing
Using the ivperf Utility to Analyze Rendering Performance
porting
Porting Custom Classes

cvspeed
Correcting Culling Bottlenecks

debugging library
Enabling Elements in the State

DEFAULT binding
Changes to Texture Coordinates
Changes to Normals

default normal
Changes to Normals

default texture coordinate
Changes to Texture Coordinates

details
creating
Creating Details

diffuse colors
Material Property Nodes
Optimizing Memory Usage

DIFFUSE_MASK
How to Convert GLRender() Methods

DirectionalLight
Using Lights Efficiently

disabling notification
Organizing the Scene for Caching

doAction()
Creating a Property Node
The doAction() Method

double-buffering
Are You Finished Yet?

downgrading files
File Downgrade Utility

DSO
Using the ivperf Utility to Analyze Rendering Performance

DSO
DSO Directories and Versions

element bundles
get(n) returns the nth value in the element Element Bundles

elements
accessing
Changing and Examining State Elements
enabling
Enabling Elements in the State
setting
Changing and Examining State Elements

EMISSIVE_MASK
How to Convert GLRender() Methods

enableNotify()
Decreasing Notification Overhead

enabling elements
Enabling Elements in the State

endShape()
SoPrimitiveVertex

engines
Engine Evaluation

enumerated values
Defining Enumerated Values for a Field

event handling performance
Picking and Handling Events

examples
group class
Alternate Node
property class
Creating a Property Node
shape class
Pyramid Node

extender API changes
Incompatible Extender API Changes

extensions
texture object
OpenGL Texture Object Extension

face set performance
Performance Tip for Face Sets

field types
writing
Using New Node Classes

fields
Setting Up the Node's Fields

files
downgrading
File Downgrade Utility
writing
File Reading and Writing

file format
unknown nodes
Using New Node Classes

file header methods
User-Defined File Headers

file version
File Version

files
reading
File Reading and Writing

finish callback
Making Your Application Feel Faster

flags
set_version
DSO Directories and Versions

flags
isBuiltIn
Using New Node Classes

flat-shaded polygons
Optimizing Pixel Fill Operations

floating point precision
SoOutput::setFloatPrecision

fog
Optimizing Vertex Transformations

frame rate
performance goal
Setting Performance Goals

frame rate
Are You Finished Yet?

generatePrimitives()
Picking
Creating a Shape Node
SoPrimitiveVertex

generating normals
Generating Normals
Changes to Normals

generating primitives
Generating Primitives

get()
get(n) returns the nth value in the element Element Bundles
Changing and Examining State Elements

getBoundingBox()
}Getting a Bounding Box
}Getting a Bounding Box
Creating a Shape Node

getChildren()
Hidden Children

getInstance()
Changing and Examining State Elements

getNum()
get(n) returns the nth value in the element Element Bundles

getPathCode()
Using the Path Code

GL_BLENDING
How to Convert GLRender() Methods

GL_POLYGON_STIPPLE
How to Convert GLRender() Methods

glColor()
How to Convert GLRender() Methods

glColorMaterial()
How to Convert GLRender() Methods

glMaterial
How to Convert GLRender() Methods

Glow property class
Creating a Property Node
Creating a Property Node

Glow property node
Using New Node Classes

GLRender()
Creating a Shape Node
Implementing SoSeparator GLRender() Methods Efficiently
Rendering
Overriding Existing GLRender() Methods

GLRenderBelowPath()
Implementing SoSeparator GLRender() Methods Efficiently

GLRenderInPath()
Implementing SoSeparator GLRender() Methods Efficiently

GLRenderOffPath()
Implementing SoSeparator GLRender() Methods Efficiently

glShadeModel(GL_FLAT)
How to Convert GLRender() Methods

Gouraud-shaded polygons
Optimizing Pixel Fill Operations

gr_osview
Measuring Performance

grabEvents()
Picking and Handling Events

group classes
creating
Creating a Group Node
example
Alternate Node

groups
hidden children
Hidden Children
path code
Using the Path Code

hardware texture mapping
Changes to Complexity

hardware-dependent performance
Are You Finished Yet?

hidden children
Hidden Children

implementing actions
Implementing Actions

inheritance
element stack
Inheritance Within the Element Stack

initClass()
If you try to enable two classes that share a stack index (for example, SoGLDrawStyleElement and SoDrawStyleElement), only the more derived class is actually enabled (in this case, SoGLDrawStyleElement). However, you can always use the base class static method to set or get the value for either the parent or the derived class. (You cannot, however, enable only the parent version and then try to treat it as the derived GL version.)Defining the Constructor
Enabling Elements in the State
Initializing the Node Class

initClass() method
nodes
Creating an Abstract Node Class

initialization
node classes
Using New Node Classes

initializing nodes
Initializing the Node Class

Internet
VRML Nodes

invalidate()
Uncacheable Nodes

invokeLineSegmentCallbacks()
SoPrimitiveVertex

invokePointCallbacks()
SoPrimitiveVertex

invokeTriangleCallbacks()
SoPrimitiveVertex

isBuiltIn flag
Using New Node Classes

isEngineModifying()
Engine Evaluation

isolating rendering
Isolating Rendering

ivAddVP
Program for Converting Files to Use Vertex Properties

ivdowngrade
File Downgrade Utility

ivfix
Program for Optimizing Scene Graphics

ivperf
Using the ivperf Utility to Analyze Rendering Performance
Isolating Rendering
Program for Analyzing Rendering Performance
and culling
Correcting Culling Bottlenecks
and OpenGL
Making Inventor Produce Efficient OpenGL
camera control
Using the ivperf Utility to Analyze Rendering Performance

ivview -p
Setting Performance Goals

keeping records
Modifying Your Application to Reduce Bottlenecks

LD_LIBRARY_PATH
Porting Applications With No Custom Classes

level of detail bottlenecks
Correcting Level of Detail Bottlenecks

lights
optimizing
Optimizing Vertex Transformations

line segment callback function
SoPrimitiveVertex

line segments
Generating Primitives

LOD node
SoLOD Node

longToInt32
Miscellaneous Changes

macros
abstract versions
Creating an Abstract Node Class
nodes
Overview

manipulators
New Manipulator for Transformations

masks
How to Convert GLRender() Methods

material binding
Optimizing Vertex Transformations

material state elements
Changes in Material Elements

materialIndex field
Improving Material Change Bottlenecks

materials
changes
Changes to Materials and Colors

measuring performance
Measuring Performance

memory
optimizing
Optimizing Memory Usage

multiple colors
How to Convert GLRender() Methods

multiple materials
Changes to Materials and Colors

node classes
abstract
Creating an Abstract Node Class
extender
using
Using New Node Classes
initializing
Using New Node Classes
Using New Node Classes

node kits
hidden children
Hidden Children

node override
Implementation of Node Override

node override
Changes in Material Elements

nodes
constructor
If you try to enable two classes that share a stack index (for example, SoGLDrawStyleElement and SoDrawStyleElement), only the more derived class is actually enabled (in this case, SoGLDrawStyleElement). However, you can always use the base class static method to set or get the value for either the parent or the derived class. (You cannot, however, enable only the parent version and then try to treat it as the derived GL version.)Defining the Constructor
creating
Creating a Node
initializing
Initializing the Node Class
macros
Overview
uncacheable
Uncacheable Nodes

NONE binding
Changes to Normals

normals
default
Changes to Normals
generating
Generating Normals
requirement for SoNormalBinding
Changes to Normals

normals
changes
Changes to Normals

notification
disabling
Organizing the Scene for Caching

notification overhead
Decreasing Notification Overhead

numVertices field
Changes to Vertex-Based Shapes

OpenGL
Inheritance Within the Element Stack
Rendering
performance
Making Inventor Produce Efficient OpenGL
texture object extension
OpenGL Texture Object Extension

OpenGL benchmark programs
Setting Performance Goals

optimizing actions
Optimizing Action Construction and Setup

optimizing applications
Optimizing Open Inventor Applications

optimizing caching
Improving Traversal Performance

optimizing custom classes
Using the ivperf Utility to Analyze Rendering Performance

optimizing event handling
Picking and Handling Events

optimizing face sets
Performance Tip for Face Sets

optimizing level of detail
Correcting Level of Detail Bottlenecks

optimizing lights
Using Lights Efficiently

optimizing memory usage
Optimizing Memory Usage

optimizing picking
Picking and Handling Events

optimizing pixel fill
Optimizing Pixel Fill Operations

optimizing rendering
Optimizing Rendering

optimizing scene graphs
Program for Optimizing Scene Graphics

optimizing textures
Optimizing Textures

optimizing transformations
Optimizing Transformations

optimizing vertex transformations
Optimizing Vertex Transformations

optimizing window clearing
Correcting Window Clear Bottlenecks

osview
swapbuf number
Measuring Performance

Override flag
Miscellaneous Changes

override status
and caching
Organizing the Scene for Caching

overriding nodes
Implementation of Node Override
Changes in Material Elements

packed color
Material Property Nodes

path code
Using the Path Code

PER_FACE materials
Optimizing Memory Usage

performance
hardware limitations
Setting Performance Goals
SoTransform
Optimizing Transformations

performance
Optimizing Open Inventor Applications
hardware dependency
Are You Finished Yet?
interrupting rendering
Making Your Application Feel Faster
keeping records
Modifying Your Application to Reduce Bottlenecks
lights
Using Lights Efficiently
measuring
Measuring Performance
rendering test
Determining Whether Rendering Is the Problem

performance goal
Setting Performance Goals

picked point
Picking

picking
Picking
performance
Picking and Handling Events

pixel filling
performance
Optimizing Pixel Fill Operations

pixie
Correcting Culling Bottlenecks

point callback function
SoPrimitiveVertex

PointLight
Using Lights Efficiently

points
Generating Primitives

pop()
How to Convert GLRender() Methods

porting
custom classes
Porting Custom Classes

porting
Porting Applications With No Custom Classes

pre-processor symbols
Inventor Revision Symbols

primitive shapes
Changes to Shape Hints

primitives
generating
Generating Primitives
performance
Optimizing Vertex Transformations

prof
Correcting Culling Bottlenecks

property classes
creating
Creating a Property Node
example
Creating a Property Node

prototyping
Creating a Shape Node

push()
How to Convert GLRender() Methods

Pyramid shape node
Pyramid Node
Using New Node Classes

rayPick()
Picking
Creating a Shape Node

read()
Creating a Group Node

reading files
File Reading and Writing

readInstance()
Additional Argument to readInstance()
reading children
Implementation of readInstance() for Group Nodes Changed

record-keeping
Modifying Your Application to Reduce Bottlenecks

render caching
Optimizing Memory Usage

render culling
Optimizing Vertex Transformations
Correcting Culling Bottlenecks
Optimizing Texture Management

renderCaching ON
Optimizing Texture Management

rendering
analyzing performance
Using the ivperf Utility to Analyze Rendering Performance
interrupt for performance
Making Your Application Feel Faster

rendering
Rendering
experiments
Isolating Rendering
isolating rendering
Isolating Rendering
optimizing rendering
Optimizing Rendering

rendering methods
Overriding Existing GLRender() Methods

rendering performance
analyzing with ivperf
Program for Analyzing Rendering Performance

reset()
How to Convert GLRender() Methods

revision symbols
Inventor Revision Symbols

scene graphs
optimizing
Program for Optimizing Scene Graphics

scene traversal
Improving Traversal Performance

SCREEN_DOOR transparency
Optimizing Pixel Fill Operations

SCREEN_SPACE complexity
Organizing the Scene for Caching

sendAllMaterial()
How to Convert GLRender() Methods

sendDiffuseByIndex()
How to Convert GLRender() Methods

sendDiffuseByIndex()
How to Convert GLRender() Methods

sending multiple colors
How to Convert GLRender() Methods

sendNoMaterial()
How to Convert GLRender() Methods

sendOnlyDiffuseColor()
How to Convert GLRender() Methods

set()
Changing and Examining State Elements

set_version flag
DSO Directories and Versions

setDetail()
Creating Details

setDrawStyle()
Changes to Viewers

setFloatPrecision()
SoOutput::setFloatPrecision

setTransparencyType()
Optimizing Pixel Fill Operations

shade model
How to Convert GLRender() Methods

shademodel(FLAT)
Optimizing Pixel Fill Operations

shapes
sending multiple colors
How to Convert GLRender() Methods
vertex-based
Porting Applications With No Custom Classes

shape classes
SoMaterialBundle
Using the Material Bundle

shape classes
Shape Nodes
creating
Creating a Shape Node
example
Pyramid Node

shape hints
element methods
Changes in Shape Hints Element Methods

shape hints
changes
Changes to Shape Hints

shapeVertex()
SoPrimitiveVertex

shininess
Improving Material Change Bottlenecks

SHININESS_MASK
How to Convert GLRender() Methods

shouldGLRender()
SoShape method
Rendering

shouldRayPick()
SoShape method
Picking

SO_ENGINE_OUTPUT
Engine Evaluation

SO_NODE_CONSTRUCTOR()
If you try to enable two classes that share a stack index (for example, SoGLDrawStyleElement and SoDrawStyleElement), only the more derived class is actually enabled (in this case, SoGLDrawStyleElement). However, you can always use the base class static method to set or get the value for either the parent or the derived class. (You cannot, however, enable only the parent version and then try to treat it as the derived GL version.)Defining the Constructor

SO_NODE_DEFINE_ENUM_VALUE()
Defining Enumerated Values for a Field

SO_NODE_HEADER()
Overview

SO_NODE_INIT_CLASS()
Overriding Existing GLRender() Methods
Initializing the Node Class

SO_NODE_IS_FIRST_INSTANCE()
If you try to enable two classes that share a stack index (for example, SoGLDrawStyleElement and SoDrawStyleElement), only the more derived class is actually enabled (in this case, SoGLDrawStyleElement). However, you can always use the base class static method to set or get the value for either the parent or the derived class. (You cannot, however, enable only the parent version and then try to treat it as the derived GL version.)Defining the Constructor

SO_NODE_SET_SF_ENUM_TYPE()
Defining Enumerated Values for a Field

SO_NODE_SOURCE()
Overview

SO_SWITCH_NODE
Determining Whether Rendering Is the Problem

SO_VERSION
Inventor Revision Symbols

SO_VERSION_REVISION
Inventor Revision Symbols

SoAction.h
Enabling Elements in the State

SoAsciiText
VRML Nodes

SoBoundingBoxAction
apply()
Correcting Culling Bottlenecks

SoCallback
Uncacheable Nodes

SoCallbackAction
Generating Primitives

SoChildList
Child List

SoClipPlane
clipped objects
Changes to Shape Hints
wireframe objects
Changes to Shape Hints

SoColorPacker
Material Property Nodes

SoComplexity
Optimizing Vertex Transformations
and caching
Organizing the Scene for Caching
complexity < 0.5; SoVertexShape
complexity < 0.5; complexity < 0.5
Changes to Complexity
no hardware texture mapping
Changes to Complexity
textureQuality field
Changes to Complexity

SoCone
primitive shapes
Changes to Shape Hints

SoCoordinate
Making Inventor Produce Efficient OpenGL

SoCube
primitive shapes
Changes to Shape Hints

SoCylinder
primitive shapes
Changes to Shape Hints

SoDB
file header methods
User-Defined File Headers

SoDetail
SoPrimitiveVertex

SoDrawStyle
clipped objects
Changes to Shape Hints
wireframe objects
Changes to Shape Hints

SoElement
override
Changes in Material Elements

SoElement
Implementation of Node Override

SoFaceSet
4-vertex polygons
Making Inventor Produce Efficient OpenGL

SoFaceSet
Making Inventor Produce Efficient OpenGL
3-vertex polygons
Making Inventor Produce Efficient OpenGL
optimizing
Optimizing Vertex Transformations
performance
Performance Tip for Face Sets

SoFieldContainer
Using New Node Classes

SoFieldContainer enableNotify()
Decreasing Notification Overhead

SoFontStyle
VRML Nodes

SoGLLazyElement
Changes in Material Elements

SoGLLazyElement
reset()
Using SoLazyElement and SoGLLazyElement
sendAllMaterial()
How to Convert GLRender() Methods
sendDiffuseByIndex
How to Convert GLRender() Methods

SoGLRenderAction
addMethod()
Overriding Existing GLRender() Methods
setAbortCallback()
Making Your Application Feel Faster

SoGLTextureQualityElement
Changes in Texture Elements

SoGroup
Child List
implementation of copying
copy() Method

SoIndexedFaceSet
3-vertex polygons
Making Inventor Produce Efficient OpenGL
4-vertex polygons
Making Inventor Produce Efficient OpenGL
performance
Performance Tip for Face Sets

SoIndexedShape
}Getting a Bounding Box

SoLabel
caching
Organizing the Scene for Caching

SoLazyElement
Changes in Material Elements
masks
How to Convert GLRender() Methods

SoLevelOfDetail
SoLOD Node
caching
Organizing the Scene for Caching

SoLightModel
BASE_COLOR
Optimizing Vertex Transformations

SoLocateHighlight
SoLocateHighlight Node

SoLOD
Optimizing Texture Management
Optimizing Vertex Transformations
SoLOD Node
caching
Organizing the Scene for Caching
optimizing
Correcting Level of Detail Bottlenecks

SoMaterial
multiple materials
Changes to Materials and Colors
override flag
Miscellaneous Changes

SoMaterialBinding
NONE
Changes in Binding Elements
override flag
Miscellaneous Changes

SoMaterialBinding
DEFAULT
Changes in Binding Elements

SoMaterialBundle
get(n) returns the nth value in the element Element Bundles
new shape nodes
Using the Material Bundle

SoNode
copy()
copy() Method
enableNotify()
Organizing the Scene for Caching

SoNode parameter
Implementation of Node Override

SoNonIndexedShape
Changes to Vertex-Based Shapes
}Getting a Bounding Box
USE_REST_OF_VERTICES
Changes to Vertex-Based Shapes

SoNormal
automatic normal generation
Changes to Normals

SoNormal
default normal
Changes to Normals
normal requirement
Changes to Normals

SoNormalBinding
NONE binding
Changes to Normals
normal requirement
Changes to Normals

SoNormalBinding
automatic normal generation
Changes to Normals
DEFAULT binding
Changes to Normals

SoNormalBundle
get(n) returns the nth value in the element Element Bundles

SoNormalGenerator class constructor
Generating Normals

SoOutput
isBinaryHeader()
Miscellaneous Changes

SoOutput
file header
User-Defined File Headers
isASCIIHeader()
Miscellaneous Changes
setFloatPrecision()
SoOutput::setFloatPrecision

SoOverrideElement
Material Property Nodes
Implementation of Node Override
Implementation of Node Override

SoPickedPoint
Picking

SoPickStyle
caching
Organizing the Scene for Caching

SoPrimitiveVertex
SoPrimitiveVertex

SoReplacedElement
SoNode parameter
Implementation of Node Override

SoSeparator
cullTest()
Correcting Culling Bottlenecks
caching
Organizing the Scene for Caching
renderCaching ON
Optimizing Texture Management

SoShape
Generating Primitives
beginSolidShape()
Using SoLazyElement and SoGLLazyElement
endSolidShape()
Using SoLazyElement and SoGLLazyElement

SoShapeHints
clipped objects
Changes to Shape Hints
shapeType
Optimizing Vertex Transformations

SoShapeHints
creaseAngle default
Changes to Shape Hints
primitive shapes
Changes to Shape Hints
vertexOrdering
Optimizing Vertex Transformations
wireframe objects
Changes to Shape Hints

SoShapeHintsElement
method changes
Changes in Shape Hints Element Methods

SoSphere
primitive shapes
Changes to Shape Hints

SoSubNode.h
Overview

SoSwitch
whichChild field
Determining Whether Rendering Is the Problem

SoText2
and caching
Organizing the Scene for Caching

SoTexture2
no hardware texture mapping
Changes to Complexity
textureQuality field
Changes to Complexity

SoTextureBlendColorElement
Changes in Texture Elements

SoTextureCoordinate2
automatic coordinate generations
Changes to Texture Coordinates
default texture coordinate
Changes to Texture Coordinates
texture coordinate requirement
Changes to Texture Coordinates

SoTextureCoordinateBinding
DEFAULT binding
Changes to Texture Coordinates

SoTextureCoordinateBundle
get(n) returns the nth value in the element Element Bundles

SoTextureModelElement
Changes in Texture Elements

SoTextureQualityElement
Changes in Texture Elements

SoTextureWrapSElement
Changes in Texture Elements

SoTextureWrapTElement
Changes in Texture Elements

SoTransform
performance
Optimizing Transformations

SoTransformerManip
New Manipulator for Transformations

SoTriangleStripSet
numVertices field
Changes to Vertex-Based Shapes

SoType
overrideType()
Overriding Existing GLRender() Methods

SoVertexProperty
SoVertexProperty Node

SoWWWAnchor
VRML Nodes

SoWWWInline
VRML Nodes

SoXtViewer
texture mapping
Changes to Viewers

SoXtViewer
viewers
Changes to Viewers

SPECULAR_MASK
How to Convert GLRender() Methods

sphere
rayPick()
Picking

SpotLight
Using Lights Efficiently

start callback
Making Your Application Feel Faster

startNotify()
Decreasing Notification Overhead

state elements
get(n) returns the nth value in the element Element Bundles

stipple transparency
How to Convert GLRender() Methods

swapbuf in osview
Measuring Performance

terminating actions
Using the Path Code

texture coordinates
automatic generation
Changes to Texture Coordinates
default
Changes to Texture Coordinates
requirement
Changes to Texture Coordinates

texture coordinates
changes
Changes to Texture Coordinates

texture mapping
and viewers
Changes to Viewers

texture object extension
OpenGL Texture Object Extension

texture quality element
Changes in Texture Elements

textureQuality field
Changes to Complexity

textures
optimizing
Optimizing Textures

The Inventor Mentor
Creating Details
Creating an Alternate Representation

transformations
optimizing
Optimizing Transformations

transparency
How to Convert GLRender() Methods
and diffuse colors
Material Property Nodes
blended
Optimizing Pixel Fill Operations
SCREEN_DOOR
Optimizing Pixel Fill Operations

traversal
Improving Traversal Performance

traversal state
enabling elements
Enabling Elements in the State

traverse()
Child List

traverseChildren()
Creating a Group Node

triangle callback function
Generating Primitives

triangle fans
SoPrimitiveVertex

triangle strips
SoPrimitiveVertex

triangles
Generating Primitives

uncacheable nodes
Uncacheable Nodes

unknown nodes
file format
Using New Node Classes

USE_REST_OF_VERTICES
Changes to Vertex-Based Shapes

user-defined file headers
User-Defined File Headers

version number
Inventor Revision Symbols

vertex ordering
CLOCKWISE
Generating Normals

vertex properties
converting files
Program for Converting Files to Use Vertex Properties

vertex property node
SoVertexProperty Node

vertex transformations
performance
Optimizing Vertex Transformations

vertex-based shapes
changes
Changes to Vertex-Based Shapes
vertex property field
Porting Applications With No Custom Classes

vertexProperty field
Program for Converting Files to Use Vertex Properties
Porting Applications With No Custom Classes

viewAll()
Using the ivperf Utility to Analyze Rendering Performance

viewers
and texture mapping
Changes to Viewers

Virtual Reality Modeling Language
VRML Nodes

VRML
nodes
VRML Nodes

wireframe
Optimizing Pixel Fill Operations

wireframe objects
Changes to Shape Hints

write()
Creating a Group Node

writing files
File Reading and Writing