debug.getRootNode().updateRenderState();
	public static void main(String[] args) {		JFileChooser chooser = new JFileChooser();		Preferences preferences = Preferences.userNodeForPackage(ModelLoader.class);		File directory = new File(preferences.get("StartDirectory", "."));		chooser.setCurrentDirectory(directory);		if (chooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {			File file = chooser.getSelectedFile();			if (isValidModelFile(file)) {				// Set it in preferences so we remember next time				preferences.put("StartDirectory", file.getAbsolutePath());								StandardGame game = new StandardGame("Model Loader");				game.start();								GameTaskQueueManager.getManager().update(new Callable<Object>() {					public Object call() throws Exception {						//MouseInput.get().setCursorVisible(true);						return null;					}				});								DebugGameState debug = new DebugGameState();				GameStateManager.getInstance().attachChild(debug);				debug.setActive(true);								LoadingGameState loading = new LoadingGameState();				GameStateManager.getInstance().attachChild(loading);				loading.setActive(true);								loading.setProgress(0.5f, "Loading Model: " + file.getName());				final Node modelNode = loadModel(file);				if (modelNode != null) {					modelNode.setLocalScale(0.02f);					modelNode.setModelBound(new BoundingBox());					modelNode.updateModelBound();					modelNode.updateRenderState();					debug.getRootNode().attachChild(modelNode);					loading.setProgress(1.0f, "Loaded Successfully");				} else {					loading.setProgress(0.9f, "Model Not Loaded");					try {						Thread.sleep(5000);					} catch(InterruptedException exc) {						exc.printStackTrace();					}					loading.setProgress(1.0f);				}			} else {				JOptionPane.showMessageDialog(null, "Selected file's extension is unknown model type: " + file.getName());			}		}	}