run.classpath=\\r
${javac.classpath}:\\r
${build.classes.dir}\r
-run.jvmargs=-Xms30m -Xmx30m -XX:MaxDirectMemorySize=256M\r
+run.jvmargs=-Xms128m -Xmx128m -XX:MaxDirectMemorySize=256M\r
run.test.classpath=\\r
${javac.test.classpath}:\\r
${build.test.classes.dir}\r
\r
@Override\r
public void write(JmeExporter ex) throws IOException {\r
+ // the mesh is removed, and reloaded when read() is called\r
+ // this reduces the save size to 10% by not saving the mesh\r
+ Mesh temp = getMesh();\r
+ mesh = null;\r
+ \r
super.write(ex);\r
OutputCapsule oc = ex.getCapsule(this);\r
oc.write(size, "size", 16);\r
oc.write(lodCalculatorFactory, "lodCalculatorFactory", null);\r
oc.write(lodEntropy, "lodEntropy", null);\r
oc.write(geomap, "geomap", null);\r
+ \r
+ setMesh(temp);\r
}\r
\r
@Override\r
lodCalculatorFactory = (LodCalculatorFactory) ic.readSavable("lodCalculatorFactory", null);\r
lodEntropy = ic.readFloatArray("lodEntropy", null);\r
geomap = (LODGeomap) ic.readSavable("geomap", null);\r
+ \r
+ Mesh regen = geomap.createMesh(stepScale, new Vector2f(1,1), offset, offsetAmount, totalSize, false);\r
+ setMesh(regen);\r
+ TangentBinormalGenerator.generate(this); // note that this will be removed\r
}\r
\r
@Override\r
quadrant = c.readInt("quadrant", 0);\r
totalSize = c.readInt("totalSize", 0);\r
lodCalculatorFactory = (LodCalculatorFactory) c.readSavable("lodCalculatorFactory", null);\r
+ \r
+ if ( !(getParent() instanceof TerrainQuad) ) {\r
+ BoundingBox all = new BoundingBox(getWorldTranslation(), totalSize, totalSize, totalSize);\r
+ affectedAreaBBox = all;\r
+ updateNormals();\r
+ }\r
}\r
\r
@Override\r