this.axisShowing = state.isAxisShowing();
this.universe = new BasicUniverse(state.getUniverseState());
timeController = new UniverseTimeController(universe);
canvas3D = new BasicSimLifeCanvas3D(universe.getFpsCounter(), state.getCanvasState());
SimpleUniverse simpleU = new SimpleUniverse(canvas3D);
// limit to graphic to 40 FPS (interval = 1000ms / 40 = 25)
simpleU.getViewer().getView().setMinimumFrameCycleTime(25);
root = new BranchGroup();
// allow to add children to the root
root.setCapability(Group.ALLOW_CHILDREN_EXTEND);
// allow the remove children from the root
root.setCapability(Group.ALLOW_CHILDREN_WRITE);
viewTransform = simpleU.getViewingPlatform().getViewPlatformTransform();
viewTransform.setTransform(new Transform3D(state.getViewerTransform3D()));
addNavigators();
root.addChild(universe.getUniverse3D().getUniverseRoot());
root.compile();
simpleU.addBranchGraph(root);
setAxisShowing(state.isAxisShowing());
}