| |
| |
Preface | |
| |
| |
| |
Virtual Reality and Java 3D | |
| |
| |
Introduction | |
| |
| |
Interactive 3D Computer Graphics | |
| |
| |
Virtual Reality | |
| |
| |
Web-Based Virtual Reality | |
| |
| |
VRML | |
| |
| |
Java 3D | |
| |
| |
Mixed Reality | |
| |
| |
Summary | |
| |
| |
References | |
| |
| |
| |
Java 3D Overview | |
| |
| |
Introduction | |
| |
| |
Getting Started | |
| |
| |
A Simple Java 3D Program for a RotatingCube | |
| |
| |
Scene Graph Basics | |
| |
| |
Scene Graph for the RotatingCube | |
| |
| |
View Branch for the RotatingCube | |
| |
| |
Content Branch for the RotatingCube | |
| |
| |
Branch Group | |
| |
| |
Transform Group | |
| |
| |
Simple Universe | |
| |
| |
Difference Between Java 3D Applet and Application | |
| |
| |
Summary | |
| |
| |
References | |
| |
| |
| |
Geometry Objects | |
| |
| |
Introduction | |
| |
| |
Shape3D | |
| |
| |
GeometryArray Class | |
| |
| |
GeometryStripArray | |
| |
| |
IndexedGeometryArray | |
| |
| |
IndexedStripArray | |
| |
| |
Creating an Object Using Multiple Geometry Classes | |
| |
| |
Utility Class | |
| |
| |
Summary | |
| |
| |
References | |
| |
| |
| |
Appearance Objects | |
| |
| |
Introduction | |
| |
| |
PointAttributes | |
| |
| |
LineAttributes | |
| |
| |
PolygonAttributes | |
| |
| |
ColoringAttributes | |
| |
| |
TransparencyAttributes | |
| |
| |
RenderingAttributes | |
| |
| |
Material | |
| |
| |
Summary | |
| |
| |
References | |
| |
| |
| |
Textures | |
| |
| |
Introduction | |
| |
| |
Texture Loading | |
| |
| |
Texture Coordinates | |
| |
| |
Texture Properties | |
| |
| |
Texture Attributes | |
| |
| |
Texture Coordinate Generation | |
| |
| |
Multilevel Texturing | |
| |
| |
MultiTexture | |
| |
| |
Texture in Applets | |
| |
| |
Summary | |
| |
| |
References | |
| |
| |
| |
Lighting, Fog, and Background | |
| |
| |
Introduction | |
| |
| |
Material | |
| |
| |
Ambient Light | |
| |
| |
Directional Light | |
| |
| |
Point Light | |
| |
| |
Spot Light or Cone Light | |
| |
| |
Light Scopes | |
| |
| |
Fog | |
| |
| |
Background | |
| |
| |
Summary | |
| |
| |
References | |
| |
| |
| |
Animation Objects | |
| |
| |
Introduction | |
| |
| |
Behavior and Animation | |
| |
| |
Alpha Object | |
| |
| |
Interpolator Object | |
| |
| |
PositionInterpolator | |
| |
| |
PositionPathInterpolator | |
| |
| |
RotationInterpolator | |
| |
| |
RotationPathInterpolator | |
| |
| |
RotPosPathInterpolator | |
| |
| |
ScaleInterpolator | |
| |
| |
RotPosScalePathInterpolator | |
| |
| |
SwitchValueInterpolator | |
| |
| |
TransparencyInterpolator | |
| |
| |
ColorInterpolator | |
| |
| |
Billboard | |
| |
| |
Level of Detail (LOD) | |
| |
| |
Morph | |
| |
| |
Summary | |
| |
| |
References | |
| |
| |
| |
Interaction | |
| |
| |
Introduction | |
| |
| |
Behavior Class | |
| |
| |
Bounding Region | |
| |
| |
Wakeup Condition and Criterion | |
| |
| |
Keyboard and Mouse Events | |
| |
| |
Posted Events | |
| |
| |
Collision Events | |
| |
| |
Elapsed Time and Frame Events | |
| |
| |
Events due to Changes in Positions and Transforms | |
| |
| |
Platform Entry and Exit Events | |
| |
| |
Sensor Entry and Exit Events | |
| |
| |
Combining Different Wakeup Criteria | |
| |
| |
Summary | |
| |
| |
References | |
| |
| |
| |
Picking | |
| |
| |
Introduction | |
| |
| |
PickRotateBehavior, PickTranslateBehavior, and PickZoomBehavior | |
| |
| |
Picking Classes in General | |
| |
| |
Customizing Picking Behavior Class | |
| |
| |
PickTool | |
| |
| |
Point and Ray Picking Shape | |
| |
| |
Ray Segment Picking Shape | |
| |
| |
Cone Picking Shape | |
| |
| |
Cylinder Picking Shape | |
| |
| |
Picking Objects within a Specified Bound from a Certain Position | |
| |
| |
Picking in a Virtual Instrument Panel | |
| |
| |
Summary | |
| |
| |
References | |
| |
| |
| |
Navigation, Input Devices, and Collision | |
| |
| |
Introduction | |
| |
| |
Keyboard Navigation Using KeyBoardBehavior | |
| |
| |
User Defined Keyboard Navigation | |
| |
| |
Navigation Using Mouse Utility Class | |
| |
| |
User-Defined Mouse Navigation | |
| |
| |
Input Device | |
| |
| |
Sensors | |
| |
| |
Collisions | |
| |
| |
Summary | |
| |
| |
References | |
| |
| |
| |
Multiple Views | |
| |
| |
Introduction | |
| |
| |
View Model | |
| |
| |
Single View | |
| |
| |
Multiple Views | |
| |
| |
View Attach Policy and Activation Radius | |
| |
| |
Projection Policy | |
| |
| |
Clip Distance | |
| |
| |
Window Eyepoint Policy and Field of View | |
| |
| |
Conventional Camera-Based View | |
| |
| |
Visibility, Screen Scale, Window Movement, and Frame Cycle Time | |
| |
| |
Canvas3D | |
| |
| |
PhysicalBody and PhysicalEnvironment | |
| |
| |
Example Applications | |
| |
| |
Summary | |
| |
| |
References | |
| |
| |
| |
Audio | |
| |
| |
Introduction | |
| |
| |
BackgroundSound | |
| |
| |
PointSound | |
| |
| |
ConeSound | |
| |
| |
Aural Environment | |
| |
| |
Summary | |
| |
| |
References | |
| |
| |
| |
A Web-Based 3D Real Time Oscilloscope Experiment | |
| |
| |
Introduction | |
| |
| |
System Reference Model and Working Principle | |
| |
| |
Scene Graph and Main Applet | |
| |
| |
Control Buttons, Sliders, Knobs, and Other Objects | |
| |
| |
Custom Behavior | |
| |
| |
Navigation Behavior | |
| |
| |
Collision Detection Behavior | |
| |
| |
Picking Behavior | |
| |
| |
Summary | |
| |
| |
References | |
| |
| |
| |
Downloading Software | |
| |
| |
| |
Running the Rotating Cube Program | |
| |
| |
| |
ViewManager | |
| |
| |
| |
Main Applet for Web-Based 3D Experiment | |
| |
| |
| |
Scene Graph Implementation for Web-Based 3D Experiment | |
| |
| |
| |
Knob Class for Web-Based 3D Experiment | |
| |
| |
| |
Navigation and Collision Detection for Web-Based 3D Experiment | |
| |
| |
| |
Picking for Web-Based 3D Experiment | |
| |
| |
| |
Program Summary and Screen Capture | |
| |
| |
About the Authors | |
| |
| |
Index | |