Chien Yang wrote: >Joerg, > > FYI. The bug is in BranchGroup under SharedGroup. Due to this bug, >the use of BranchGroup under a SharedGroup should only be so if it is >necessary, such as the need to detach/attach dynamically. > In your test program, you've created a n-level deep sub-graph, >with a BranchGroup at each begining level : > > /** > * Create subgraph of a certain depth. > */ > static int numNodesCreated = 0; > Node createDeepSubGraph( int depth ) > { > BranchGroup g = new BranchGroup(); > // If possible replace the above line with : > // Group g = new Group(); > // as a workaround. > > ..... deleted code ..... > > > } > >and the final sub-graph is added to a SharedGroup. Hence creating >a scene-graph consists of a SharedGroup with n BranchGroups, in >a skewed arrangement; a possibly worst case for this bug. :-) > >The workaround to this bug is not to use BranchGroup under SharedGroup >if possible. If BranchGroup is really needed under SharedGroup, use >flat and shallow sub-graph rather than deep and skewed sub-graph. > >thanks, > Chien Yang > Java 3D Team. > > > We use this construct a lot in Xj3D so I'd like a little more information. What do you mean by shallow.
We get a lot of this to support DEF's in VRML. All VRML nodes have a BG above them to allow detaching at runtime. If the node is DEFed its wrapped in a sharedGroup like this SG BG VRMLNode(Say Group) SG BG VRMLNode(Say Shape) Can you also detail the effects, I've seen mention performance or memory usage problems. A finally, is this something that will wait till 1.4 to fix or are their plans for a release before 1.4? -- Alan Hudson President: Yumetech, Inc. http://www.yumetech.com/ Web3D Open Source Chair http://www.web3d.org/TaskGroups/source/ =========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff JAVA3D-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".