Index

How to Use Fog in Cosmo 3D Applications

actions
Scene Graph Actions
Applying Actions to Multiple Root Nodes

addChild()
Creating Scene Graphs

ambient color
Material Settings

animate
Sensors

animation, creating
Setting Cycle Duration

application, simple
Cosmo 3D Sample Application

aspect ratio
csCamera

atmospheric effects, See fog
Uses of Fog in Cosmo 3D Applications

attribute
Creating csGeoSet Objects
csGeoSet Attributes
indexing
Indexing Attributes
setting
Setting Attribute Bindings
specifying
Specifying Attributes

base classes
Understanding a Cosmo 3D Scene Graph

binding
Setting Attribute Bindings
Attribute Bindings

BLEND
Transparency Settings

BLEND_TENV
Texture Environment Settings

bounding shape
Bounding Volumes

camera
csCamera
ortho
csOrthoCamera
perspective
csPerspCamera

cleanFields()
Cleaning the csContext Fields

clip plane
Setting the Clip Planes

compile, scene graph
Compiling Part of a Scene Graph

coordIndices
Indexing Attributes

Cosmo 3D
Getting Started with Cosmo 3D

csAction
csAction

csAppearance
Minimize Use of csAppearance Modes
Creating Geometries
The csAppearance Class
Scene Graph for Cube.cxx

csArray
Array Classes

csArrayField
csArrayField

csAtomField
csAtomField

csAudioClip
How to Play a Sound File

csAudioSamples
Overview
Specifying Audio Files

csBillboard
Group Node Types

csBound
Bounding Volumes

csBox
Using Large Geometries

csCamera
csCamera

csColorInterpolator
csColorInterpolator
Engine Types

csCompileAction
Action Types
Compiling Part of a Scene Graph
Action Types

csCone
Using Large Geometries
Classes defining Geometric Objects

csContainer
The csContainer Class

csContext
Creating Geometries
csContext Overview
csContext
Multiprocessing
Minimize Use of csAppearance Fields

csCoordinateInterpolator
csCoordinateInterpolator
Engine Types
Engine Types

csCube
Using Large Geometries

csCylinder
Using Large Geometries

csData
Data Class
Data Class
Data Class

csDepthFunc()
Overriding the Default Order of Layering Shapes

csDirectionalLight
csDirectionalLight
Leaf Nodes

csDrawAction
Action Types
Rendering World Space
Rendering the Scene

csEngine
Engines

csEnvironment
csFog
How to Use Fog in Cosmo 3D Applications

csEnvironment
Group Node Types
csEnvironment Methods
Limiting the Scope of Lights
The csEnvironment Classes

csField
The csField Class
csField

csFieldInfo
csFieldInfo

csFog
fields
How to Use Fog in Cosmo 3D Applications

csFog
How to Use Fog in Cosmo 3D Applications

csFrustum
csFrustumCamera
csFrustum

csFrustumCamera
csFrustumCamera

csGeoMath.h
csFrustumCamera

csGeometry
Using csAppearance
Creating Geometries
Classes defining Geometric Objects
The csGeometry Class
Scene Graph for Cube.cxx

csGeoSet
Creating csGeoSet Objects
Indexing csGeoSet Attributes
Classes defining Geometric Objects
Cosmo 3D-Derived csGeoSet Objects

csGroup
Root Node
The csGroup Class

csHit
Storing Selected Screen Objects

csIndexedFaceSet
Using csIndexedFaceSet

csIntArray
Array Methods

csInterpolator
Engines that Interpolate Values
Engine Types

csIsectAction
Using csIsectAction
Action Types
Selecting Screen Objects

csLight
csLight
Leaf Nodes

csLineSet
Using csLineSet
Using csIndexedLineSet

csLineStripSet
Using csLineStripSet
csGeoSet Attributes

csLOD
Level of Detail Reduced for Performance
Group Node Types
transition between child nodes
Transitioning Between Levels of Detail

csMaterial
Material Settings

csMatrix4f
Cosmo 3D Matrices

csMField
csMField

csMorphEng
csMorphEng
csMorphEng
csMorphEng
csMorphEng

csMorphEng3f
csMorphEng3f and csMorphEng4f

csMorphEng4f
csMorphEng3f and csMorphEng4f

csMorphEngine
Keys and Key Values

csMorphVec3f
Engine Types

csNode
The csNode Class

csNormalInterpolator
Engine Types
Engine Types
csNormalInterpolator

csObject
The csObject Class

csOrientationInterpolator
Engine Types
Engine Types
csOrientationInterpolator

csOrthoCamera
csOrthoCamera

csPerspCamera
csPerspCamera

csPlane
csPlane

csPlaneSensor
csPlaneSensor

csPlaneSensor event
csPlaneSensor Events

csPlaneSensor, limiting
Limiting Translations

csPlaneSensor, offset
csPlaneSensor Offsets

csPlaneSensor, updating
Updating csPlaneSensor

csPointLight
csPointLight
Leaf Nodes

csPointSet
Using csPointSet
csGeoSet Attributes

csPolySet
Using csPolySet
csGeoSet Attributes

csPositionInterpolator
Engine Types
csPositionInterpolator
Engine Types

csQuadSet
Using csQuadSet

csScalarInterpolator
Engine Types
csScalarInterpolator
Engine Types

csSeg
csPlane
csSeg

csSelectorEng
csSelectorEng3F and csSelectorEng4F

csShape
csShape

csShape
The csShape Class
Scene Graph for Cube.cxx

csSound
Adding Sounds To Virtual Worlds
fields
csSound Fields

csSoundAction
Action Types
Adding Sounds To Virtual Worlds
Playing Sound Files

csSoundPlayer
methods
csSoundPlayer Methods

csSoundPlayer
csSoundPlayer Methods

csSphere
Using Large Geometries
Classes defining Geometric Objects

csSphereBound
Bounding Volumes

csSphereSensor
csSphereSensor

csSphereSensor, scope
Scope of csSphereSensor

csSphereSensor, updating
Updating csSphereSensor

csSpline
csSpline
Engine Types

csSpotLight
Leaf Nodes

csSwitch
Using csSwitch to Switch Between Nodes
Group Node Types

csTexGen
Setting the csTexGen Mode

csTexture
Specifying a Texture Image

csThread
Creating Threads

csTimeSensor
csTimeSensor

csTimeSensor, active or not
isActive

csTimeSensors, updating
Updating csTimeSensor

csTouchSensor
csTouchSensor

csTouchSensor, scope of
Scope of csTouchSensor

csTransform
The csTransform Class
Transforming Shapes to New Locations, Sizes, and Orientations
Group Node Types

csTransformEng
Engine Types
Engine Types
Engine Types
csTransformEng

csTriSet
Using csTriSet

csTriStripSet
Using csTriStripSet
csGeoSet Attributes
Using csTriSet

csVec2f
Vector Methods

csVec3f
Vector Methods

csVec3s
Vector Methods
csVec3s

csVec4f
Vector Methods

csVec4ub
csVec4ub Methods

csWindow
User Interface Mechanisms
Multiprocessing
Creating the User Interface
using a portion of
Setting the Screen Display of the Scene

csWindow, updating sensors
Updating with csWindow
Updating with csWindow

cube.cxx
Cosmo 3D Sample Application

cull
view frustum, culling
Culling the View Frustum

cull
Face Culling
sides of geometries
Face Culling

depth, sense of
Creating a Sense of Depth

depth-cuing, See fog
Uses of Fog in Cosmo 3D Applications

DepthFuncEnum
Overriding the Default Order of Layering Shapes
Overriding the Default Order of Layering Shapes

diffuse
Material Settings

dirty fields
Cleaning the csContext Fields

emissive color
Material Settings

enableDirtyFieldTracking()
Cleaning the csContext Fields

engine
Engines

engine, connecting
Connecting Engines to Other Nodes

engine, input and output
Input and Output Fields

engine, terminology
Interpolator Engine Terminology

event
touchTime
csTouchSensor Output

event, hitNormal
csTouchSensor Output

event, hitPoint
csTouchSensor Output

event, hitTexCoord
csTouchSensor Output

event, isOver
csTouchSensor Output

event, rotation and trackPoint
csSphereSensor Events

event, trackPoint
Unclamped Translations

exit()
Thread Parameters

EYE_LINEAR
Setting the csTexGen Mode

far clip plane
Setting the Clip Planes

FAST
Transparency Settings

FAST_TEX
Texture Mode Settings

fields
setting
Setting the Values in Scene Graph Nodes

field classes
Field Classes

field, multiple values
Single-Item and Multi-Item Fields

field, single value
Single-Item and Multi-Item Fields

fields
Field Access

fields of view
Offsetting the Fields of View

fields, dirty
Cleaning the csContext Fields

FILL_PMODE
Filling Geometries

FLAT_TEX
Shade Model Settings

flight simulation
fog, use of
Uses of Fog in Cosmo 3D Applications

fog
How to Use Fog in Cosmo 3D Applications

fog
Uses of Fog in Cosmo 3D Applications
example program
How to Use Fog

FOV
Offsetting the Fields of View

fractionChanged
Fraction Changed Event

frustum
csFrustum
Culling the View Frustum

frustum culling
Culling the View Frustum

geometry
ready-made
Using Large Geometries

geometry
csContext Overview
placing in a scene
Placing Shapes in a Scene

graphics state
State Machine

group node
Group Nodes

haze, See fog
Uses of Fog in Cosmo 3D Applications

hitNormal event
csTouchSensor Output

hitPoint event
csTouchSensor Output

hitTexCoord event
csTouchSensor Output

insertChild()
Altering Scene Graphs

interface
User Interface Mechanisms

isOver event
csTouchSensor Output

key
Keys and Key Values

key
Interpolator Engine Terminology

key value
Interpolator Engine Terminology
Keys and Key Values

layering shapes
Overriding the Default Order of Layering Shapes

level of detail
Level of Detail Reduced for Performance

light, setting boundaries for
Limiting the Scope of Lights

line segment
csSeg

line strip sets
csGeoSet Attributes

LINE_PMODE
Filling Geometries

loading a scene graph
Loading a VRML Scene Graph

local space
Local or World Translations
Placing Geometries in World Space

makeCurrent()
Changing the Context

material
Material Settings

MODULATE_TENV
Texture Environment Settings

multi-thread
csContext

multi-threaded program
csContext in Multi-threaded Programs

multi-threading
Multiprocessing

multiple-value field
Using set() and get() Methods to Set and Get Multiple-Value Fields

multiprocessing
Multiprocessing

near clip plane
Setting the Clip Planes

NICE
Transparency Settings

NICE_TEX
Texture Mode Settings

node
What Is a Node
Scene Graph Nodes
group
Group Nodes

NON_PERSP_TEX
Texture Mode Settings

normalIndices
Indexing Attributes

OBJECT_LINEAR
Setting the csTexGen Mode

offset, rotation
Offsetting the Rotation

opBarrier
Implementing Multiprocessing

OpenGL
Accessing States

OpenGL Optimizer
Getting Started with Cosmo 3D

optimize
Optimizing Rendering

optimize,setCullFace()
Face Culling

optimizing performance
Optimizing Rendering

orthographic projection
csOrthoCamera

parts of a Cosmo application
Understanding the Different Parts of Cube.cxx

performance tips
Performance Programming Techniques
fog
Uses of Fog in Cosmo 3D Applications

performance tools
Optimizing Rendering

PERSP_TEX
Texture Mode Settings

perspective
Texture Mode Settings

pick()
Using Pick()

playing sounds without using an action
Playing Sound in Immediate Mode

point sets
csGeoSet Attributes

POINT_PMODE
Filling Geometries

pointer device event
csPlaneSensor
Sensors

polysets
csGeoSet Attributes

range()
Choosing a Child Node Based on Range

ready-made geometries
Using Large Geometries

reference counting
Reference Counting
Reference Counting

reference, and unreference
Reference Counting

rendering
Rendering World Space
optimized
Setting the Transformation Matrix Directly

REPLACE_TENV
Texture Environment Settings

resolution
Level of Detail Reduced for Performance

root node
Root Node
Applying Actions to Multiple Root Nodes

rotate
Setting the Transformation
Setting the Transformation

rotation event
csSphereSensor Events

rotation, using sensors
Offsetting the Rotation

routines
pfGetRef()
Reference Counting
pfRef()
Reference Counting
Reference Counting
pfUnref()
Reference Counting

runtime type
Runtime Typing

saving a scene graph
Saving Scene Graphs

scale
Setting the Transformation

scene graph
loading
Loading a VRML Scene Graph

scene graph
Understanding a Cosmo 3D Scene Graph
Scene Graph for Cube.cxx
Scene Graph Nodes
at a glance
Building a Scene Graph
common mistakes
Troubleshooting Scene Graph Construction
compiling part of
Compiling Part of a Scene Graph
diagram
Diagramming Scene Graphs
editing
Altering Scene Graphs
saving
Saving Scene Graphs
transversal order of nodes
The Order In Which Actions Are Passed Between Nodes

scene graph, steps to create
Steps for Creating and Displaying a Simple Scene Graph

scope, of lighting
Limiting the Scope of Lights

screen objects, storing
Storing Selected Screen Objects

screen, make one color
Making the Screen One Color

selecting screen objects
Selecting Screen Objects

semaphore
Implementing Multiprocessing

Sensor
Sensors

setAlphaFunc()
Producing Transparency Without Blending

setCullFace()
Face Culling

setFarClip()
Setting the Clip Planes

setHorizFOV()
Setting the Fields of View

setMatrix()
Setting the Transformation

setNearClip()
Setting the Clip Planes

setPolyMode()
Filling Geometries

setPosition()
csCamera

setScaleOrientation()
Setting the Transformation

setTexGen()
Enabling Texture Generation

setting fields
Setting the Values in Scene Graph Nodes

setTranslation()
Setting the Transformation

setVertFOV()
Setting the Fields of View

shading model
Shade Model Settings

shininess
Material Settings

single-value field
Using Tokens to Set and Get Single-Value Fields

sleep()
Thread Parameters

smoke, See fog
Uses of Fog in Cosmo 3D Applications

SMOOTH_TEX
Shade Model Settings

sound
Adding Sounds To Virtual Worlds
locating and directing
Locating and Directing the Sound
playing
Playing the Sound File
priority
Sound Priority
reverse direction
Reverse Direction Sound
spatialized
Locating and Directing the Sound

sound file
specifying
Choosing Sound Samples to Play

specular
Material Settings

SPHERE_MAP
Setting the csTexGen Mode

start()
Starting Threads

state machine
State Machine

state, accessing
Accessing States

state, changing
What Modifies the Graphics State?

state, current
Accessing States

store data, classes that
Array Storage Class Types

storing selected screen objects
Storing Selected Screen Objects

texture
Applying a Texture

texture coordinates
Texture Map Coordinates

thread
Multiprocessing

thread, application
Thread Blocking

thread, blocking
Thread Blocking
Thread Blocking

thread, controling
Thread Parameters

thread, creating
Creating Threads

thread, draw
Thread Blocking

thread, exiting
Thread Parameters

thread, parameters
Thread Parameters

thread, starting
Starting Threads

time of day
Setting the Start and Stop Times

timed events
Enabling csTimeSensor

token
Using Tokens to Set and Get Single-Value Fields

touchTime event
csTouchSensor Output

TrackPoint event
Unclamped Translations
csSphereSensor Events

transform nodes
Placing Transform Nodes

transformation
Relating Local Space to World Space

transition
between csLOD child nodes
Transitioning Between Levels of Detail

translate geometry, using sensors
Setting Up csPlaneSensor

transparency
Transparency Settings
Material Settings

traversal
Top-Down Traversals

traversal, order
Traversal Order

tri strip set
csGeoSet Attributes

troubleshooting, scene graphs
Troubleshooting Scene Graph Construction

updateSensors()
Updating csTimeSensor

user interface
Creating the User Interface
User Interface Mechanisms

view
using camera
Using a Camera to View a Scene

viewport
Setting the Screen Display of the Scene

virtual sphere
Virtual Sphere

visual simulation
fog, use of
Uses of Fog in Cosmo 3D Applications

VRML
Loading a VRML Scene Graph

wait()
Thread Parameters

window, creating your own
Creating Your Own Window

world space
Transforming Shapes to New Locations, Sizes, and Orientations
Placing Geometries in World Space
Local or World Translations
The csTransform Class
Relating Local Space to World Space

X window
Creating Your Own Window