
Tworząc wizualizacje , gry lub innego rodzaju animacje spotkamy się z koniecznością wczytania jakiegoś rodzaju modeli 3D. Nie inaczej jest w przypadku silnika jMonkeyEngine, pytanie jednak brzmi jak najszybciej wczytać takie modele? Najlepiej jest skorzystać z formatu udostępnionego przez jME. Taka zmiana formatu pozwoli na zaoszczędzenie sporej ilości czasu potrzebnej na parsowanie wczytywanych modeli. Poniżej prezentuję kod dzięki któremu wczytany model w formacie .obj, możemy wyeksportować do formatu .dat :
URL model = Court.class.getClassLoader().getResource(
"model/Court.obj");
Spatial courtNode = null;
try {
FormatConverter converter = new ObjToJme();
converter.setProperty("mtllib", model);
ByteArrayOutputStream BO = new ByteArrayOutputStream();
converter.convert(model.openStream(), BO);
courtNode = (Spatial)BinaryImporter.getInstance().load(new ByteArrayInputStream(BO
.toByteArray()));
} catch (IOException e) { // Just in case anything happens
logger.logp(Level.SEVERE, this.getClass().toString(),
"simpleInitGame()", "Exception", e);
System.exit(0);
}
Wczytany obiekt możemy teraz wyeksportować:
export(courtNode,"model/Court");</pre>
import przygotowanego modelu:
courtNode = open("model/Court");