|
|
@@ -49,13 +49,10 @@ import com.jme3.math.Vector3f;
|
|
|
import com.jme3.renderer.Camera;
|
|
|
import com.jme3.terrain.geomipmap.TerrainLodControl;
|
|
|
import com.jme3.terrain.geomipmap.TerrainQuad;
|
|
|
-import com.jme3.terrain.heightmap.AbstractHeightMap;
|
|
|
-import com.jme3.terrain.heightmap.ImageBasedHeightMap;
|
|
|
import com.jme3.texture.Texture;
|
|
|
import com.jme3.texture.Texture.WrapMode;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
-import jme3tools.converters.ImageToAwt;
|
|
|
|
|
|
/**
|
|
|
*
|
|
|
@@ -74,6 +71,9 @@ public class TerrainTestModifyHeight extends SimpleApplication {
|
|
|
private float grassScale = 64;
|
|
|
private float dirtScale = 16;
|
|
|
private float rockScale = 128;
|
|
|
+
|
|
|
+ private boolean raiseTerrain = false;
|
|
|
+ private boolean lowerTerrain = false;
|
|
|
|
|
|
public static void main(String[] args) {
|
|
|
TerrainTestModifyHeight app = new TerrainTestModifyHeight();
|
|
|
@@ -81,22 +81,26 @@ public class TerrainTestModifyHeight extends SimpleApplication {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void initialize() {
|
|
|
- super.initialize();
|
|
|
-
|
|
|
- loadHintText();
|
|
|
- initCrossHairs();
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public void update() {
|
|
|
- super.update();
|
|
|
-
|
|
|
+ public void simpleUpdate(float tpf){
|
|
|
updateHintText();
|
|
|
+
|
|
|
+ if (raiseTerrain){
|
|
|
+ Vector3f intersection = getWorldIntersection();
|
|
|
+ if (intersection != null) {
|
|
|
+ adjustHeight(intersection, 64, 1);
|
|
|
+ }
|
|
|
+ }else if (lowerTerrain){
|
|
|
+ Vector3f intersection = getWorldIntersection();
|
|
|
+ if (intersection != null) {
|
|
|
+ adjustHeight(intersection, 64, -1);
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
@Override
|
|
|
public void simpleInitApp() {
|
|
|
+ loadHintText();
|
|
|
+ initCrossHairs();
|
|
|
setupKeys();
|
|
|
|
|
|
// First, we load up our textures and the heightmap texture for the terrain
|
|
|
@@ -203,21 +207,10 @@ public class TerrainTestModifyHeight extends SimpleApplication {
|
|
|
terrain.setMaterial(matTerrain);
|
|
|
}
|
|
|
} else if (name.equals("Raise")) {
|
|
|
- if (pressed) {
|
|
|
- Vector3f intersection = getWorldIntersection();
|
|
|
- if (intersection != null) {
|
|
|
- adjustHeight(intersection, 64, 1);
|
|
|
- }
|
|
|
- }
|
|
|
+ raiseTerrain = pressed;
|
|
|
} else if (name.equals("Lower")) {
|
|
|
- if (pressed) {
|
|
|
- Vector3f intersection = getWorldIntersection();
|
|
|
- if (intersection != null) {
|
|
|
- adjustHeight(intersection, 32, -1);
|
|
|
- }
|
|
|
- }
|
|
|
+ lowerTerrain = pressed;
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
};
|
|
|
|