The Java docs for TransformGroup state that all Transform3D's must be affine and in the case of Transforms in the view brnach they must also be congruent
http://jogamp.org/deployment/java3d/1.6.0-final/j3dcore/javadoc/javax/media/j3d/TransformGroup.htmlIn my case it was morphing horse heads (for animation of shaking it's mane etc) that needed to have the connection to the neck geometry line up perfectly with the bone weighted skin geometry of the neck.It that used TransformGroups as each bone, so the head would move one frame ahead of the neck and the tiny difference would be very noticeable as a fracture in the horse at the chin/neck interface.