I create a specific Appearance node for each of my Shape3D nodes and save references to each. Many of the appearences are identical initially, although they may each eventually have unique colors as a result of user input.
While the scene is live, I call the Appearance node "setMaterial" method to change the color of Shape3D objects.
It seems as though Java3D might have tried to "merge" Appearance nodes together, because a small percentage of changes are mapped to Shape3D objects that reference some other Appearance object.
For example does this code appear correct (assuming I create lots of "foo" instances) :
class foo {
Appearance ap;
foo(){
ap = new Appearance;
ap.setCapability(Appearance.ALLOW_MATERIAL_WRITE);
Shape3D shape = new Shape3D();
shape.setAppearance(ap);
//... the shape gets added to a the Scenegraph, etc.
}// This gets called to change the Shape's color in response to user input
void changeMaterial(Material mat){
ap.setMaterial(mat);
}_________________________________________________________________ Add photos to your e-mail with MSN 8. Get 2 months FREE*. http://join.msn.com/?page=features/featuredemail
=========================================================================== 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".
