|
From: <tre...@us...> - 2007-09-24 07:32:05
|
Revision: 434
http://ogoglio.svn.sourceforge.net/ogoglio/?rev=434&view=rev
Author: trevorolio
Date: 2007-09-24 00:32:04 -0700 (Mon, 24 Sep 2007)
Log Message:
-----------
Make the data manager respect the server's flag to not load textures
Modified Paths:
--------------
maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DDataCache.java
maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DDataManager.java
maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DRenderer.java
maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DTemplateData.java
Modified: maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DDataCache.java
===================================================================
--- maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DDataCache.java 2007-09-24 06:53:23 UTC (rev 433)
+++ maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DDataCache.java 2007-09-24 07:32:04 UTC (rev 434)
@@ -38,4 +38,15 @@
private long getLODFromGUID(String guid){
return Long.parseLong(guid.split("-")[1]);
}
+
+ private J3DTemplateData[] getAllTemplateData(){
+ return (J3DTemplateData[])templateDataMap.values().toArray(new J3DTemplateData[0]);
+ }
+
+ public void cleanup() {
+ J3DTemplateData[] data = getAllTemplateData();
+ for (int i = 0; i < data.length; i++) {
+ data[i].cleanup();
+ }
+ }
}
Modified: maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DDataManager.java
===================================================================
--- maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DDataManager.java 2007-09-24 06:53:23 UTC (rev 433)
+++ maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DDataManager.java 2007-09-24 07:32:04 UTC (rev 434)
@@ -158,7 +158,6 @@
gi.setTextureCoordinates(0, texCoords);
new NormalGenerator(-1.0f).generateNormals(gi);
- new Stripifier().stripify(gi);
GeometryArray geometryArray = gi.getGeometryArray(false, false, false);
geometryArray.setCapability(GeometryArray.ALLOW_COORDINATE_READ);
geometryArray.setCapability(GeometryArray.ALLOW_COUNT_READ);
@@ -182,6 +181,10 @@
}
private Appearance generateAppearance(GeometryProvider geoProvider, Obj.Group group, HashMap textures) {
+ if (!loadAppearances) {
+ return DEFAULT_APPEARANCE;
+ }
+
Obj.Range[] ranges = group.getRanges();
ObjMtl.Material material = group.getObj().getMaterialForFace(ranges[0].getLower());
if (material == null) {
@@ -312,4 +315,8 @@
}
}
+ public void cleanup() {
+ dataCache.cleanup();
+ }
+
}
Modified: maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DRenderer.java
===================================================================
--- maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DRenderer.java 2007-09-24 06:53:23 UTC (rev 433)
+++ maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DRenderer.java 2007-09-24 07:32:04 UTC (rev 434)
@@ -536,6 +536,7 @@
canvas.stopRenderer();
Log.info("Stopped renderer");
}
+ dataManager.cleanup();
}
private DoorRenderable createDoorRenderable(Door door) throws IOException, RenderableParseException {
Modified: maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DTemplateData.java
===================================================================
--- maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DTemplateData.java 2007-09-24 06:53:23 UTC (rev 433)
+++ maven/trunk/ogoglio-common/src/main/java/com/ogoglio/viewer/j3d/J3DTemplateData.java 2007-09-24 07:32:04 UTC (rev 434)
@@ -30,8 +30,13 @@
}
public String[] getShapeNames() {
- return (String[])geometries.keySet().toArray(new String[0]);
-
+ return (String[]) geometries.keySet().toArray(new String[0]);
+
}
+ public void cleanup() {
+ geometries.clear();
+ appearances.clear();
+ }
+
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|