The Java 3D API Tutorial
64 pages
Slovak
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
64 pages
Slovak
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

Getting Started with™the Java 3D APIChapter 4InteractionBGBGBTG TGView Canvas3D Screen3DView PlatformTG TG TG TG TG TGPhysical Body Physical EnvironmentS S S S S SDennis J BouvierTutorial version 1.6 (Java 3D API v 1.2)Module2: Interaction and Animation Chapter 4. Interaction© 2000-2001 Sun Microsystems, Inc.2550 Garcia Avenue, Mountain View, California 94043-1100 U.S.AAll Rights Reserved.The information contained in this document is subject to change without notice.SUN MICROSYSTEMS PROVIDES THIS MATERIAL "AS IS" AND MAKES NO WARRANTY OF ANY KIND,EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OFMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. SUN MICROSYSTEMS SHALL NOT BELIABLE FOR ERRORS CONTAINED HEREIN OR FOR INCIDENTAL OR CONSEQUENTIAL DAMAGES(INCLUDING LOST PROFITS IN CONNECTION WITH THE FURNISHING, PERFORMANCE OR USE OF THISMATERIAL, WHETHER BASED ON WARRANTY, CONTRACT, OR OTHER LEGAL THEORY).THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS. CHANGES AREPERIODICALLY MADE TO THE INFORMATION HEREIN; THESE CHANGES WILL BE INCORPORATED IN NEWEDITIONS OF THE PUBLICATION. SUN MICROSYSTEMS, INC. MAY MAKE IMPROVEMENTS AND/OR CHANGESIN THE PRODUCT(S) AND/OR PROGRAM(S) DESCRIBED IN THIS PUBLICATION AT ANY TIME.Some states do not allow the exclusion of implied warranties or the limitations or exclusion of liability for incidental orconsequential damages, so the above limitations and ...

Informations

Publié par
Nombre de lectures 53
Langue Slovak

Extrait

Getting Started with the Java 3DAPI
BG TG
Chapter 4 Interaction
BG
B TG
View Platform TG TG TG TG TG TG
S S S S S SPhysical Body
Tutorial version 1.6 (Java 3D API v 1.2)
View
Canvas3D
Physical Environment
Screen3D
Dennis J Bouvier
Module2: Interaction and Animation
© 2000-2001 Sun Microsystems, Inc. 2550 Garcia Avenue, Mountain View, California 94043-1100 U.S.A All Rights Reserved.
Chapter 4. Interaction
The information contained in this document is subject to change without notice. SUN MICROSYSTEMS PROVIDES THIS MATERIAL "AS IS" AND MAKES NO WARRANTY OF ANY KIND, EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. SUN MICROSYSTEMS SHALL NOT BE LIABLE FOR ERRORS CONTAINED HEREIN OR FOR INCIDENTAL OR CONSEQUENTIAL DAMAGES (INCLUDING LOST PROFITS IN CONNECTION WITH THE FURNISHING, PERFORMANCE OR USE OF THIS MATERIAL, WHETHER BASED ON WARRANTY, CONTRACT, OR OTHER LEGAL THEORY). THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS. CHANGES ARE PERIODICALLY MADE TO THE INFORMATION HEREIN; THESE CHANGES WILL BE INCORPORATED IN NEW EDITIONS OF THE PUBLICATION. SUN MICROSYSTEMS, INC. MAY MAKE IMPROVEMENTS AND/OR CHANGES IN THE PRODUCT(S) AND/OR PROGRAM(S) DESCRIBED IN THIS PUBLICATION AT ANY TIME. Some states do not allow the exclusion of implied warranties or the limitations or exclusion of liability for incidental or consequential damages, so the above limitations and exclusion may not apply to you. This warranty gives you specific legal rights, and you also may have other rights which vary from state to state. Permission to use, copy, modify, and distribute this documentation for NON-COMMERCIAL purposes and without fee is hereby granted provided that this copyright notice appears in all copies. Java, JavaScript, Java 3D, HotJava, Sun, Sun Microsystems, and the Sun logo are trademarks or registered trademarks of Sun Microsystems, Inc. All other product names mentioned herein are the trademarks of their respective owners.
The Java 3D Tutorial
Module 2: Interaction and Animation
Chapter 4. Interaction
Table of Contents Chapter 4: INTERACTION ...................................................................................................................................................... 4 1 -4.1 BEHAVIOR:THEBASE FORINTERACTION ANDANIMATION............................................................................ 4-1 4.1.1 Applications of Behavior...................................................................................................................... 4 2 -4.1.2 Overview of Behavior Classes.............................................................................................................. 4-3 4.2 BEHAVIORBASICS......................................................................................................................................... 4-3 4.2.1 Writing a Behavior Class ..................................................................................................................... 4-4 4.2.2 Using a Behavior Class........................................................................................................................ 4-7 4.2.3 Behavior Class API ............................................................................................................................ 4-10 4.3 WAKEUPCONDITIONS: HOWBEHAVIORS ARETRIGGERED.......................................................................... 4-12 4.3.1 WakeupCondition ............................................................................................................................... 4-13 4.3.2 WakeupCriterion ................................................................................................................................ 4-13 4.3.3 Specific WakeupCriterion Classes ..................................................................................................... 4-14 4.3.4 WakeupCondition Composition.......................................................................................................... 4-24 4.4 BEHAVIORUTILITYCLASSES FORKEYBOARDNAVIGATION........................................................................ 4-25 4.4.1 Simple KeyNavigatorBehavior Example Program............................................................................. 4-26 4.4.2 KeyNavigatorBehavior and KeyNavigator Classes ........................................................................... 4-28 4.5 UTILITYCLASSES FORMOUSEINTERACTION............................................................................................... 4-29 4.5.1 Using the Mouse Behavior Classes .................................................................................................... 4-29 4.5.2 Mouse Behavior Foundation.............................................................................................................. 4-31 4.5.3 Specific Mouse Behavior Classes....................................................................................................... 4-32 4.5.4 Mouse Navigation .............................................................................................................................. 4-35 4.6 PICKING....................................................................................................................................................... 4-36 4.6.1 Using Picking Utility Classes............................................................................................................. 4-38 4.6.2 Java 3D API Core Picking Classes .................................................................................................... 4-40 4.6.3 General Picking Package Classes...................................................................................................... 4-50 4.6.4 Specific Picking Behavior Classes ..................................................................................................... 4-53 4.7 CHAPTERSUMMARY.................................................................................................................................... 4-56 4.8 SELFTEST.................................................................................................................................................... 4-56
The Java 3D Tutorial
4-i
Module2: Interaction and Animation
Chapter 4. Interaction
List of Figures Figure 4-1 Hierarchy of Subclasses of Behavior ...................................................................................... 4-4 Figure 4-2 Recipe for Writing a Custom Behavior Class ......................................................................... 4-5 Figure 4-3 Recipe for Using a Behavior Class.......................................................................................... 4-8 Figure 4-4 Scene Graph Diagram of the Content Branch Graph Created in SimpleBehaviorApp.java. .. 4-8 Figure 4-5 An Alternative Scene Graph Placement for the Behavior Object in SimpleBehaviorApp. .. 4-10 Figure 4-6 API Class Hierarchy for Behavior......................................................................................... 4-11 Figure 4-7 The Java 3D API Class Hierarchy for WakeupCondition and Related Classes.................... 4-13 Figure 4-8 The Basic View Branch Graph Showing the View Platform Transform .............................. 4-26 Figure 4-9Recipe for Using the KeyNavigatorBehavior Utility Class ................................................... 4-27 Figure 4-10 Recipe for Using Mouse Behavior Classes ......................................................................... 4-30 Figure 4-11 Projection of PickRay in the Virtual World ....................................................................... 4-36 Figure 4-12 Scene Graph Diagram for a Cube Composed of Discrete Shape3D Plane Objects. ........... 4-37 Figure 4-13 Recipe for Using Mouse Picking Utility Classes ................................................................ 4-39 Figure 4-14 PickShape Hierarchy ........................................................................................................... 4-41 Figure 4-15 Parameters of PickCone pick shapes ................................................................................... 4-44 Figure 4-16 Parameters of PickCylinder pick shapes ............................................................................. 4 46 -
List of Tables Table 4-1 Applications of Behavior Categorized by Stimulus and Object of Change ............................ 4-2 Table 4-2 The 14 Specific WakeupCriterion Classes ............................................................................. 4-14 Table 4-3 KeyNavigatorBehavior Movements ....................................................................................... 4-28 Table 4-4 Summary of Specific MouseBehavior Classes....................................................................... 4-29 Table 4-5 Selection of PickShape ........................................................................................................... 4-41
List of Code Fragments Code Fragment 4-1 SimpleBehavior Class in SimpleBehaviorApp.java.................................................. 4-6 Code Fragment 4-2 CreateSceneGraph Method in SimpleBehaviorApp.java.......................................... 4-8 Code Fragment 4-3 Outline of OpenBehavior Class, an Example of Coordinated Behavior Classes.... 4-17 Code Fragment 4-4 Code using OpenBehavior and CloseBehavior, Coordinated Behavior Classes .... 4-17 Code Fragment 4-5 Using the KeyNavigatorBehavior Class (part 1) .................................................... 4-27 Code Fragment 4-6 Using the KeyNavigatorBehavior Class (part 2) .................................................... 4-28 Code Fragment 4-7 Using the MouseRotate Utility Class...................................................................... 4-30 Code Fragment 4-8 Using Mouse Behavior Classes for Interactive Navigation of the Virtual World. . 4-36 Code Fragment 4-9 The createSceneGraph Method of the MousePickApp Example Program. ............ 4-40
The Java 3D Tutorial
4-ii
Module2: Interaction and Animation
Chapter 4. Interaction
List of Reference Blocks Behavior Method Summary .................................................................................................................... 4-12 ViewPlatform Method Summary (partial list) ........................................................................................ 4-12 WakeupCondition Method Summary...................................................................................................... 4-13 WakeupCriterion Method Summary ....................................................................................................... 4-14 WakeupOnActivation Constructor Summary ......................................................................................... 4-15 WakeupOnAWTEvent Constructor Summary........................................................................................ 4-15 WakeupOnAWTEvent Method Summary .............................................................................................. 4 16 -WakeupOnBehaviorPost Constructor Summary..................................................................................... 4-16 WakeupOnBehaviorPost Method Summary .......... ................. 4-16 ................................................................ WakeupOnCollisionEntry Constructor Summary................................................................................... 4-18 WakeupOnCollisionExit Constructor Summary..................................................................................... 4-19 WakeupOnCollisionExit Method Summary ........................................................................................... 4-19 WakeupOnCollisionMovement Constructor Summary .......................................................................... 4-20 WakeupOnCollisionMovement Method Summary................................................................................. 4-20 WakeupOnDeactivation Constructor Summary...................................................................................... 4-21 WakeupOnElapsedFrames Constructor Summary.................................................................................. 4-21 WakeupOnElapsedFrames Method Summary ........................................................................................ 4-21 WakeupOnElapsedTime Constructor Summary ..................................................................................... 4-22 WakeupOnElapsedTime Method Summary............................................................................................ 4-22 WakeupOnSensorEntry Constructor Summary ...................................................................................... 4-22 WakeupOnSensorEntry Method Summary ............................................................................................. 4-22 WakeupOnSensorExit Constructor Summary......................................................................................... 4-23 WakeupOnSensorExit Method Summary ............................................................................................... 4-23 WakeupOnTransformChange Constructor Summary ............................................................................. 4-23 WakeupOnTransformChange Method Summary.................................................................................... 4-23 WakeupOnViewPlatformEntry Constructor Summary........................................................................... 4-24 WakeupOnViewPlatformEntry Method Summary ................................................................................. 4-24 WakeupOnViewPlatformExit Constructor Summary............................................................................. 4-24 WakeupOnViewPlatformExit Method Summary ................................................................................... 4-24 WakeupAnd Constructor Summary ........................................................................................................ 4-25 WakeupOr Constructor Summary ........................................................................................................... 4-25 WakeupAndOfOrs Constructor Summary .............................................................................................. 4-25 WakeupOrOfAnds Constructor Summary .............................................................................................. 4 25 -KeyNavigatorBehavior Constructor Summary ....................................................................................... 4 29 -Package:com.sun.j3d.utils.behaviors.keyboardExtends:Behavior .......................................... 4-29 KeyNavigatorBehavior Method Summary.............................................................................................. 4-29 MouseBehavior Method Summary ......................................................................................................... 4-31 Interface MouseBehaviorCallback Method Summary ............................................................................ 4-32 MouseRotate Constructor Summary ....................................................................................................... 4-32 Package:eusmos.orviaheb.sliutsu..dm3ojc. nExtends:MouseBehavior................. 4-32 MouseRotate Method Summary.............................................................................................................. 4-33 MouseTranslate Constructor Summary................................................................................................... 4-33 Package:se.mounus.d3j.moc avehrsioti.u.blsExtends:MouseBehavior................. 4-33 MouseTranslate Method Summary ......................................................................................................... 4-34 MouseZoom Constructor Summary ........................................................................................................ 4-34 Package: ocd.utils.m.sun.j3om.sesuahebroivExtends:MouseBehavior................. 4-34 MouseZoom Method Summary............................................................................................................... 4-35
The Java 3D Tutorial
4-iii
Module2: Interaction and Animation
Chapter 4. Interaction
Node Method (partial list)....................................................................................................................... 4-38 Node Capabilities Summary (partial list)................................................................................................ 4-38 PickShape................................................................................................................................................4-42 PickBounds Constructor Summary ......................................................................................................... 4-42 PickBounds Method Summary................................................................................................................ 4-42 PickPoint Constructor Summary............................................................................................................. 4-42 PickPoint Method Summary ................................................................................................................... 4-43 PickRay Constructor Summary ............................................................................................................... 4-43 PickRay Method Summary ..................................................................................................................... 4-43 PickSegment Constructor Summary ....................................................................................................... 4-43 PickSegment Method Summary .............................................................................................................. 4-44 PickCone Method Summary ................................................................................................................... 4-44 PickConeRay Constructor Summary....................................................................................................... 4-45 PickConeRay Method Summary ............................................................................................................. 4-45 PickConeSegment Constructor Summary ............................................................................................... 4-45 PickConeSegment Method Summary ..................................................................................................... 4-45 PickCylinder Method Summary.............................................................................................................. 4-46 PickCylinderRay Constructor Summary ................................................................................................. 4-46 PickCylinderRay Method Summary ....................................................................................................... 4-47 PickCylinderSegment Constructor Summary ......................................................................................... 4-47 PickCylinderRay Method Summary ....................................................................................................... 4-47 SceneGraphPath Overview ..................................................................................................................... 4-48 SceneGraphPath Constructor Summary.................................................................................................. 4-48 SceneGraphPath Method Summary (partial list) .................................................................................... 4-49 BranchGroup and Locale picking methods for use with PickShape....................................................... 4-50 PickMouseBehavior Method Summary .................................................................................................. 4-50 Package:p.ciikgn ti.u.blsavehrsiomoc nus.d3j.Extends:Behavior...................... 4-50 PickObject Constructor Summary........................................................................................................... 4-51 PickObject Method Summary (partial list) ............................................................................................. 4-51 PickObject Method Summary (partial list - continued) .......................................................................... 4 51 -Interface PickingCallback Method Summary ......................................................................................... 4-52 Intersect Constructor Summary............................................................................................................... 4-52 Intersect Method Summary (partial list) ................................................................................................. 4-53 Intersect Method Summary (partial list - continued) .............................................................................. 4-53 PickRotateBehavior Constructor Summary ............................................................................................ 4-54 PickRotateBehavior Method Summary................................................................................................... 4-54 PickTranslateBehavior Constructor Summary........................................................................................ 4-55 PickTranslateBehavior Method Summary .............................................................................................. 4-55 PickZoomBehavior Constructor Summary ............................................................................................. 4-56 PickZoomBehavior Method Summary.................................................................................................... 4-56
The Java 3D Tutorial
4-iv
Module2: Interaction and Animation
Chapter 4. Interaction
Preface to Chapter 4 This document is one part of a tutorial on using the Java 3D API. You should be familiar with Java 3D API basics to fully appreciate the material presented in this Chapter. Additional chapters and the full preface to this material are presented in the Module 0 document available at: http://java.sun.com/products/javamedia/3d/collateral
Cover Image The cover image represents the interaction possible in Java 3D through the use of the mouse. The mouse appears to be connected to the window with a visual, the cube, but the wire proceeds to the scene graph diagram to the Behavior object. The scene graph diagram represents a cube created with six individual shape objects (each of the six faces of the cube is a plane  of course you don't have to do this). The image of the application is from an early version ofMouseRotateApp.java, an example program included in the examples jar available with this tutorial. The image of the mouse is from the clip art distributed with Microsoft Office 97.
The Java 3D Tutorial
4-v
Module 2: Interaction and Animation
CH A P T E R4 Interaction
Chapter Objectives After reading this chapter, youll be able to: Appreciate the Behavior Class as the foundation for interaction and animation Create custom behavior classes objects into virtual worlds to provide interactionIncorporate behavior Use utility classes for keyboard navigation Use utility classes for mouse interaction Use utility picking classes In the previous chapters of the tutorial, the Java 3D virtual universes are almost all static. For Java 3D worlds to be more interesting, and more useful, interaction and animation are necessary. Interaction is when the imagery changes in response to user action. Animation is defined as changes in the imagery without direct user action, and usually corresponds with the passage of time. In Java 3D, both interaction and animations are specified through the use of the Behavior class. This chapter introduces the Behavior class and explains its use in interactive programs. The next chapter, Animation, continues with animation examples and explanations.
4.1Behavior: the Base for Interaction and Animation Both interaction and animation are specified with Behavior objects. The Behavior class is an abstract class that provides the mechanism to include code to change the scene graph. The Behavior class, and its descendants, are links to user code providing changes to the graphics and sounds of the virtual universe. The purpose of a Behavior object in a scene graph is to change the scene graph, or objects in the scene graph, in response to some stimulus. A stimulus can be the press of a key, a mouse movement, the collision of objects, the passage of time, some other event, or a combination of these. Changes produced include adding objects to the scene graph, removing objects from the scene graph, changing attributes of objects in the scene graph, rearranging objects in the scene graph, or a combination of these. The possibilities are only limited by the capabilities of the scene graph objects. The Java 3D Tutorial4-1
Module2: Interaction and Animation
Chapter 4. Interaction
4.1ppli .1 A cations of Behavior Since a behavior is a link between a stimulus and an action, considering all the combinations of possible stimuli and possible actions is to consider the many applications of Behavior objects. The following table surveys the realm of possibilities with Behavior, listing possible stimuli down the left column and possible changes across the top. The table does not list all possible applications of Behavior, only the simple ones (one stimulus results in one change). Some combinations of stimulus and change only make sense in a specific setting; these are listed as 'application specific'. Furthermore, combinations of stimuli and combinations of actions are possible.
Table 4-1 Applications of Behavior Categorized by Stimulus and Object of Change object of change stimulus SceneTransformGroup Geometry View Graph (reason for(visualchaectsngejbodirection)ioglocewineivahgnc()sctjeobginchitswro,gnivomer,gn(addirocol)rseahepoctsnghaoalecbj(usiv)no change)orientation or locati or n at user interaction application application navigation specific specific visual objects visual objects visual objects View changes with collisions change orientation change appearance disappear in collision or location in collision collision time animation animation animation animation View location billboard level of detail application application (LOD) specific specific
In Table 4-1 some of the possible behaviors are spelled out. For example, collision actions are described. Others, such as billboard or level of detail (LOD) behaviors, may not be familiar to you. Below are some quick explanations. The chart does not include all applications of Behavior; combinations of stimuli and/or changes are not shown.Picking Although listed in also implemented using behaviors but is not listed in the table. is Table 4-1 and implemented in Java 3D API, collision detection is not addressed in this tutorial. Natural things, such as trees, take a tremendous amount of geometry to accurately represent all of the branches, leaves and bark structure. One alternative is to use a textured polygon instead of the geometry. This technique is sometime referred to as the billboard approach. This is especially true when a behavior is used to automatically orient the textured polygon orthogonal to the viewer such that only the front textured face is viewed. This orienting behavior is calledbillboard behavior. The billboard approach is effective when the object to be represented by the texture is distant so that the individual parts of the visual object represented by the texture would not easily be distinguished. For the tree example, if the viewer is so distant that branches are hardly distinguishable, it is hardly worth the memory and computation requirements to represent each leaf of the tree. This technique is recommended for any application requiring visually complex objects in a distance. However, if the viewer were able to
The Java 3D Tutorial
4-2
Module2: Interaction and Animation
Chapter 4. Interaction
approach the billboard, at some distance the lack of depth of the textured polygon would be detected by the viewer. Thelevel of detail (LOD) LOD, visually complex objects are behavior has a related application. With represented by multiple visual objects of varying levels of detail (hence the name). The visual object representation with the least detail is used when the viewer is far away. The most detailed representation is used when the viewer is close. The LOD behavior automatically switches between the representations based on the objects distance to the viewer. Both the billboard and level of detail behaviors correspond to classes extended from Behavior which implement these common applications. Other specializations of behavior are possible and several are listed in Figure 4-1. For example, there are several MouseBehavior classes that manipulate a transform in response to mouse movements. Normally the view transform is changed by the mouse behavior to change the view in response to mouse actions. Also note how the behaviors can chain. For example, mouse movements or key strokes can be used to change the view. In response to the movement of the view, billboard, level of detail, and/or other behaviors may take place. Fortunately, each behavior is specified separately.
Animation Versus Interaction Since the distinction between animation and interaction used in this tutorial is fairly fine, here is an example to help clarify this distinction. If a user navigates in a program where such a behavior is provided, the view platform will move in response to the keyboard and/or mouse events. The motion of the view platform is an interaction because it is the direct result of the user action. However, other things may change as a result of the view platform motion (e.g., billboard and LOD behaviors). Changes as a result of the view platform motion are indirectly caused by the user and are therefore animations.
4.1.2 Overview of Behavior Classes The following figure, Figure 4-1, shows specializations of behavior made in the Java 3D API core and utility packages. User defined specializations of Behavior are also possible and are only limited in functionality by the programmer's imagination. This module of the tutorial covers each of the classes in Figure 4-1. This chapter covers the shaded classes in the figure; Chapter 5 covers the remaining classes. This figure does not present the total coverage of the Java 3D API in Chapters 4 and 5; each chapter presents more than the classes in this figure.
4.2Behavior Basics As explained in the previous section, Behavior classes are used in many Java 3D applications and in many ways. It is important to understand the workings and programming considerations of the behavior class. This section explains the Behavior class, gives a recipe for programming a custom behavior class, and gives a simple example application using a behavior class.
The Java 3D Tutorial
4-3
Module2: Interaction and Animation
Behavior Billboard Interpolator LOD DistanceLOD KeyNavigatorBehavior MouseBehavior
PickMouseBehavior
ColorInterpolator
RotPosPathScaleInterpolator
MouseRotate MouseTranslate MouseZoom
PickRotateBehavior PickTranslateBehavior PickZoomBehavior
Chapter 4. Interaction
Figure 4-1 Hierarchy of Subclasses of Behavior ing 4.2.1 Writ a Behavior Class This section explains how to write a custom behavior class. You know from Section 4.1 that there are behavior classes you can use without writing a class. However, in seeing how to create a Behavior class you learn how behaviors work. So even if you only plan to use a behavior class, you might want to read this section. Also, the class written in this section is used in the next section. (If you don't plan to write a Behavior class you can skip this section for now.) Mechanics of Behaviors A custom behavior class implements the initialization and processStimulus methods from the abstract Behavior class. Of course, the custom behavior class also has at least one constructor and may have other methods as well. Most behaviors will act on a scene graph object to affect the behavior. In Table 4-1, the object a behavior acts upon is refered to as theobject of change. It is through this object, or objects, that the behavior affects the virtual world. While it is possible to have a behavior that does not have an object of change, most do. The behavior needs a reference to its object(s) of change to be able to make the behavioral changes. The constructor can be used to set the reference to the object of change. If it does not, another method in the custom behavior class must store this information. In either case, the reference is made at the time the scene graph is being constructed, which is the first computation of the behavior.
The Java 3D Tutorial
4-4
  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents