hi
After I’ve studied the Scene and SceneBase classes used by model loaders, I’ve come to the opinion that these ones need slight changes.
Why not letting SceneBase extend BranchGroup or even better TransformGroup? I’ve no idea why BranchGroup exists. In each and every situation a BranchGroup is used a TransformGroup would be as good or better. And if you want to do something senseful with the Scene, you will mostly have to put it into an (additional) TransformGroup.
The getBranchGroup() method would be marked depricated for compatiblity reasons and return the Scene itself. The setSceneGroup method wouldn’t make any sense to exist and could just be removed.
If SceneBase would extend TransformGroup, you could add a float parameter to the load method indicating the size (of the bounding sphere), so that the scene is scaled to that size.
Of course the loaders would need slight changes. But they wheren’t too big.
All these getFooBarNodes() methods should make use of generic java code (of course their private fields, too) and should not return arrays but genericaly typed Vectors and HashMaps. I don’t know, where’s the sense in pushing the items into arrays and returning these ones. Just return the generic and typesafe vectors.
With these changes, which don’t do any harm, the Scene/SceneBase would be of much more use, I think.