Forráskód Böngészése

* Terrain API changes to better support TG in SDK terrain editor
* Refactored TG slightly.
* Updated TG tests
* new TG alphamap test data

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@8711 75d07b2b-3a1a-0410-a2c5-0572b91ccdca

bre..ns 14 éve
szülő
commit
e803848611

+ 8 - 8
JME3TestsTemplate/nbproject/genfiles.properties

@@ -1,8 +1,8 @@
-build.xml.data.CRC32=0f706f4a
-build.xml.script.CRC32=0b0b23c4
[email protected]
-# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
-# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
-nbproject/build-impl.xml.data.CRC32=0f706f4a
-nbproject/build-impl.xml.script.CRC32=7c2e5d21
-nbproject/build-impl.xml.stylesheet.CRC32=[email protected]
+build.xml.data.CRC32=0f706f4a
+build.xml.script.CRC32=0b0b23c4
[email protected]
+# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
+# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
+nbproject/build-impl.xml.data.CRC32=0f706f4a
+nbproject/build-impl.xml.script.CRC32=46d1a69a
+nbproject/build-impl.xml.stylesheet.CRC32=[email protected]

+ 1 - 1
jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeTerrainGrid.java

@@ -63,7 +63,7 @@ public class JmeTerrainGrid extends JmeTerrainQuad implements TerrainGridListene
         getLookupContents().add(spatial);
         this.geom = spatial;
         setName(spatial.getName());
-        geom.addListener("GuiListener", this);
+        geom.addListener(this);
         SceneApplication.getApplication().enqueue(new Callable<Void>() {
 
             public Void call() throws Exception {

BIN
jme3-templates/src/com/jme3/gde/templates/BasicGameProject.zip


+ 24 - 24
jme3-terrain-editor/src/com/jme3/gde/terraineditor/TerrainEditorController.java

@@ -335,7 +335,7 @@ public class TerrainEditorController implements NodeListener {
             if (terrain == null)
                 return 1f;
             MatParam matParam = null;
-            matParam = terrain.getMaterial().getParam("DiffuseMap_"+layer+"_scale");
+            matParam = terrain.getMaterial(null).getParam("DiffuseMap_"+layer+"_scale");
             if (matParam == null)
                 return -1f;
             return (Float) matParam.getValue();
@@ -367,7 +367,7 @@ public class TerrainEditorController implements NodeListener {
             Terrain terrain = (Terrain) getTerrain(null);
             if (terrain == null)
                 return;
-            terrain.getMaterial().setFloat("DiffuseMap_"+layer+"_scale", scale);
+            terrain.getMaterial(null).setFloat("DiffuseMap_"+layer+"_scale", scale);
             setNeedsSave(true);
         } else {
             try {
@@ -397,9 +397,9 @@ public class TerrainEditorController implements NodeListener {
                 return null;
             MatParam matParam = null;
             if (layer == 0)
-                matParam = terrain.getMaterial().getParam("DiffuseMap");
+                matParam = terrain.getMaterial(null).getParam("DiffuseMap");
             else
-                matParam = terrain.getMaterial().getParam("DiffuseMap_"+layer);
+                matParam = terrain.getMaterial(null).getParam("DiffuseMap_"+layer);
 
             if (matParam == null || matParam.getValue() == null) {
                 return null;
@@ -430,11 +430,11 @@ public class TerrainEditorController implements NodeListener {
             return null;
         MatParam matParam = null;
         if (alphaLayer == 0)
-            matParam = terrain.getMaterial().getParam("AlphaMap");
+            matParam = terrain.getMaterial(null).getParam("AlphaMap");
         else if(alphaLayer == 1)
-            matParam = terrain.getMaterial().getParam("AlphaMap_1");
+            matParam = terrain.getMaterial(null).getParam("AlphaMap_1");
         else if(alphaLayer == 2)
-            matParam = terrain.getMaterial().getParam("AlphaMap_2");
+            matParam = terrain.getMaterial(null).getParam("AlphaMap_2");
         
         if (matParam == null || matParam.getValue() == null) {
             return null;
@@ -471,9 +471,9 @@ public class TerrainEditorController implements NodeListener {
             if (terrain == null)
                 return;
             if (layer == 0)
-                terrain.getMaterial().setTexture("DiffuseMap", texture);
+                terrain.getMaterial(null).setTexture("DiffuseMap", texture);
             else
-                terrain.getMaterial().setTexture("DiffuseMap_"+layer, texture);
+                terrain.getMaterial(null).setTexture("DiffuseMap_"+layer, texture);
 
             setNeedsSave(true);
         } else {
@@ -522,9 +522,9 @@ public class TerrainEditorController implements NodeListener {
         if (terrain == null)
             return;
         if (layer == 0)
-            terrain.getMaterial().clearParam("DiffuseMap");
+            terrain.getMaterial(null).clearParam("DiffuseMap");
         else
-            terrain.getMaterial().clearParam("DiffuseMap_"+layer);
+            terrain.getMaterial(null).clearParam("DiffuseMap_"+layer);
 
         setNeedsSave(true);
     }
@@ -535,9 +535,9 @@ public class TerrainEditorController implements NodeListener {
         if (terrain == null)
             return;
         if (layer == 0)
-            terrain.getMaterial().clearParam("NormalMap");
+            terrain.getMaterial(null).clearParam("NormalMap");
         else
-            terrain.getMaterial().clearParam("NormalMap_"+layer);
+            terrain.getMaterial(null).clearParam("NormalMap_"+layer);
 
         setNeedsSave(true);
     }
@@ -553,9 +553,9 @@ public class TerrainEditorController implements NodeListener {
                 return null;
             MatParam matParam = null;
             if (layer == 0)
-                matParam = terrain.getMaterial().getParam("NormalMap");
+                matParam = terrain.getMaterial(null).getParam("NormalMap");
             else
-                matParam = terrain.getMaterial().getParam("NormalMap_"+layer);
+                matParam = terrain.getMaterial(null).getParam("NormalMap_"+layer);
 
             if (matParam == null || matParam.getValue() == null) {
                 return null;
@@ -616,18 +616,18 @@ public class TerrainEditorController implements NodeListener {
             if (texture == null) {
                 // remove the texture if it is null
                 if (layer == 0)
-                    terrain.getMaterial().clearParam("NormalMap");
+                    terrain.getMaterial(null).clearParam("NormalMap");
                 else
-                    terrain.getMaterial().clearParam("NormalMap_"+layer);
+                    terrain.getMaterial(null).clearParam("NormalMap_"+layer);
                 return;
             }
 
             texture.setWrap(WrapMode.Repeat);
 
             if (layer == 0)
-                terrain.getMaterial().setTexture("NormalMap", texture);
+                terrain.getMaterial(null).setTexture("NormalMap", texture);
             else
-                terrain.getMaterial().setTexture("NormalMap_"+layer, texture);
+                terrain.getMaterial(null).setTexture("NormalMap_"+layer, texture);
 
             setNeedsSave(true);
         } else {
@@ -957,7 +957,7 @@ public class TerrainEditorController implements NodeListener {
             Terrain terrain = (Terrain) getTerrain(null);
             if (terrain == null)
                 return false;
-            MatParam param = terrain.getMaterial().getParam("useTriPlanarMapping");
+            MatParam param = terrain.getMaterial(null).getParam("useTriPlanarMapping");
             if (param != null)
                 return (Boolean)param.getValue();
 
@@ -992,18 +992,18 @@ public class TerrainEditorController implements NodeListener {
             Terrain terrain = (Terrain) getTerrain(null);
             if (terrain == null)
                 return;
-            terrain.getMaterial().setBoolean("useTriPlanarMapping", enabled);
+            terrain.getMaterial(null).setBoolean("useTriPlanarMapping", enabled);
 
-            float texCoordSize = 1/terrain.getTextureCoordinateScale();
+            float size = terrain.getTerrainSize();
 
             if (enabled) {
                 for (int i=0; i<getNumUsedTextures(); i++) {
-                    float scale = 1f/(float)(texCoordSize/getTextureScale(i));
+                    float scale = 1f/(float)(size/getTextureScale(i));
                     setTextureScale(i, scale);
                 }
             } else {
                 for (int i=0; i<getNumUsedTextures(); i++) {
-                    float scale = (float)(texCoordSize*getTextureScale(i));
+                    float scale = (float)(size*getTextureScale(i));
                     setTextureScale(i, scale);
                 }
             }

+ 2 - 2
jme3-terrain-editor/src/com/jme3/gde/terraineditor/TerrainEditorTopComponent.java

@@ -1020,7 +1020,7 @@ public final class TerrainEditorTopComponent extends TopComponent implements Sce
     // runs on AWT thread now
     public void sceneOpened(SceneRequest request) {
 
-        if (request.equals(sentRequest)) {
+        if (request.equals(sentRequest) && editorController != null) {
             currentRequest = request;
             //Logger.getLogger(TerrainEditorTopComponent.class.getName()).finer("Terrain sceneRequested " + request.getWindowTitle());
 
@@ -1033,7 +1033,7 @@ public final class TerrainEditorTopComponent extends TopComponent implements Sce
             if (terrain != null) {
                 // add the terrain root save node
 
-                ((Node) terrain).setMaterial(terrain.getMaterial());
+                ((Node) terrain).setMaterial(terrain.getMaterial(null));
                 // it appears when loading the actual applied material on the terrain
                 // does not reflect the material that we get from the terrain.
 

+ 3 - 3
jme3-terrain-editor/src/com/jme3/gde/terraineditor/tools/PaintTerrainToolAction.java

@@ -118,11 +118,11 @@ public class PaintTerrainToolAction extends AbstractTerrainToolAction {
             return null;
         MatParam matParam = null;
         if (alphaLayer == 0)
-            matParam = terrain.getMaterial().getParam("AlphaMap");
+            matParam = terrain.getMaterial(null).getParam("AlphaMap");
         else if(alphaLayer == 1)
-            matParam = terrain.getMaterial().getParam("AlphaMap_1");
+            matParam = terrain.getMaterial(null).getParam("AlphaMap_1");
         else if(alphaLayer == 2)
-            matParam = terrain.getMaterial().getParam("AlphaMap_2");
+            matParam = terrain.getMaterial(null).getParam("AlphaMap_2");
         
         if (matParam == null || matParam.getValue() == null) {
             return null;