Saving and Loading Games

You can save and load scenes and individual Nodes using com.jme3.export.binary.BinaryExporter and com.jme3.export.binary.BinaryImporter. Use standard Java serialization to load game data. The jMonkeyEngine binary file format is .j3o. You can open, view, and edit .j3o files in the jMonkeyPlatform.

Saving a Node

  @Override
  public void destroy() {
    System.getProperty("user.home");
    BinaryExporter exporter = BinaryExporter.getInstance();
    File(userHome+"/somefile.j3o");
    try {
      exporter.save(rootNode, file);
    } catch (IOException ex) {
      Logger.getLogger(Main.class.getName()).log(Level.SEVERE, "Failed to save node!", ex);
    }
    super.destroy();
  }

Loading a Node

  @Override
  public void simpleInitApp() {
    System.getProperty("user.home");
    BinaryImporter importer = BinaryImporter.getInstance();
    importer.setAssetManager(assetManager);
    File(userHome+"/somefile.j3o");
    try {
      Node loadedNode = (Node)importer.load(file);
      loadedNode.setName("loaded node");
      rootNode.attachChild(loadedNode);
    } catch (IOException ex) {
      Logger.getLogger(Main.class.getName()).log(Level.SEVERE, "No saved node loaded.", ex);
    }
    ...
 

view online version