diff --git a/.classpath b/.classpath
index 3df74ba..5cde1e7 100644
--- a/.classpath
+++ b/.classpath
@@ -11,13 +11,13 @@
-
+
-
+
diff --git a/src/sg/SpaceGame.java b/src/sg/SpaceGame.java
index 3a3c7e4..2e174a1 100644
--- a/src/sg/SpaceGame.java
+++ b/src/sg/SpaceGame.java
@@ -62,6 +62,6 @@ public class SpaceGame extends SimplePhysicsGame {
}
public void simpleUpdate(){
- environment.setLocalTranslation(cam.getLocation());
+ environment.update();
}
}
\ No newline at end of file
diff --git a/src/sg/data/skybox/advanced/front.png b/src/sg/data/skybox/advanced/front.png
index 3693f90..1e82b77 100644
Binary files a/src/sg/data/skybox/advanced/front.png and b/src/sg/data/skybox/advanced/front.png differ
diff --git a/src/sg/data/skybox/advanced/rest.png b/src/sg/data/skybox/advanced/rest.png
index 35ae69e..8c4ab5f 100644
Binary files a/src/sg/data/skybox/advanced/rest.png and b/src/sg/data/skybox/advanced/rest.png differ
diff --git a/src/sg/env/Environment.java b/src/sg/env/Environment.java
index ef27554..88de1b5 100644
--- a/src/sg/env/Environment.java
+++ b/src/sg/env/Environment.java
@@ -1,59 +1,38 @@
package sg.env;
-import sg.SpaceGame;
+import sg.util.SGUtil;
import com.jme.image.Texture;
import com.jme.scene.Node;
import com.jme.scene.Skybox;
-import com.jme.util.TextureManager;
+import com.jme.system.DisplaySystem;
public class Environment extends Node {
private static final long serialVersionUID = 1L;
+
+ private Skybox space;
public Environment(){
buildSkyBox();
}
private void buildSkyBox() {
- Skybox skybox = new Skybox("skybox", 500, 500, 500);
- Texture north = TextureManager.loadTexture(
- SpaceGame.class.getClassLoader().getResource(
- "sg/data/skybox/advanced/front.png"),
- Texture.MinificationFilter.BilinearNearestMipMap,
- Texture.MagnificationFilter.Bilinear);
- Texture south = TextureManager.loadTexture(
- SpaceGame.class.getClassLoader().getResource(
- "sg/data/skybox/advanced/rest.png"),
- Texture.MinificationFilter.BilinearNearestMipMap,
- Texture.MagnificationFilter.Bilinear);
- Texture east = TextureManager.loadTexture(
- SpaceGame.class.getClassLoader().getResource(
- "sg/data/skybox/advanced/rest.png"),
- Texture.MinificationFilter.BilinearNearestMipMap,
- Texture.MagnificationFilter.Bilinear);
- Texture west = TextureManager.loadTexture(
- SpaceGame.class.getClassLoader().getResource(
- "sg/data/skybox/advanced/rest.png"),
- Texture.MinificationFilter.BilinearNearestMipMap,
- Texture.MagnificationFilter.Bilinear);
- Texture up = TextureManager.loadTexture(
- SpaceGame.class.getClassLoader().getResource(
- "sg/data/skybox/advanced/rest.png"),
- Texture.MinificationFilter.BilinearNearestMipMap,
- Texture.MagnificationFilter.Bilinear);
- Texture down = TextureManager.loadTexture(
- SpaceGame.class.getClassLoader().getResource(
- "sg/data/skybox/advanced/rest.png"),
- Texture.MinificationFilter.BilinearNearestMipMap,
- Texture.MagnificationFilter.Bilinear);
- skybox.setTexture(Skybox.Face.North, north);
- skybox.setTexture(Skybox.Face.West, west);
- skybox.setTexture(Skybox.Face.South, south);
- skybox.setTexture(Skybox.Face.East, east);
- skybox.setTexture(Skybox.Face.Up, up);
- skybox.setTexture(Skybox.Face.Down, down);
- skybox.preloadTextures();
- skybox.updateRenderState();
- this.attachChild(skybox);
+ space = new Skybox("space", 500, 500, 500);
+ Texture north = SGUtil.loadTexture("sg/data/skybox/advanced/front.png");
+ Texture rest = SGUtil.loadTexture("sg/data/skybox/advanced/rest.png");
+
+ space.setTexture(Skybox.Face.North, north);
+ space.setTexture(Skybox.Face.West, rest);
+ space.setTexture(Skybox.Face.South, rest);
+ space.setTexture(Skybox.Face.East, rest);
+ space.setTexture(Skybox.Face.Up, rest);
+ space.setTexture(Skybox.Face.Down, rest);
+ space.preloadTextures();
+ space.updateRenderState();
+ this.attachChild(space);
+ }
+
+ public void update(){
+ space.setLocalTranslation(DisplaySystem.getDisplaySystem().getRenderer().getCamera().getLocation());
}
}
diff --git a/src/sg/util/Util.java b/src/sg/util/SGUtil.java
similarity index 83%
rename from src/sg/util/Util.java
rename to src/sg/util/SGUtil.java
index 6332b4f..c0488f9 100644
--- a/src/sg/util/Util.java
+++ b/src/sg/util/SGUtil.java
@@ -8,10 +8,10 @@ import java.net.URISyntaxException;
import java.net.URL;
import com.jme.bounding.BoundingBox;
+import com.jme.image.Texture;
import com.jme.scene.Node;
import com.jme.scene.Spatial;
-import com.jme.scene.state.ZBufferState;
-import com.jme.system.DisplaySystem;
+import com.jme.util.TextureManager;
import com.jme.util.export.binary.BinaryImporter;
import com.jme.util.resource.ResourceLocatorTool;
import com.jme.util.resource.SimpleResourceLocator;
@@ -29,12 +29,12 @@ import com.jmex.model.converters.ObjToJme;
* @author Erick B Passos
*
*/
-public class Util {
+public class SGUtil {
// So JME can find the model textures easily.
private static URL textureSearchPath;
static {
- textureSearchPath = Util.class.getClassLoader().getResource("tancz/test/physics/vehicle/data/");
+ textureSearchPath = SGUtil.class.getClassLoader().getResource("sg/data/");
try {
ResourceLocatorTool.addResourceLocator(ResourceLocatorTool.TYPE_TEXTURE, new SimpleResourceLocator(textureSearchPath));
} catch (URISyntaxException e) {
@@ -85,15 +85,30 @@ public class Util {
return null;
}
+ /**
+ * Loads textures
+ *
+ * @param url is the path to the texture
+ * @return an texture
+ */
+ public static Texture loadTexture(String url){
+ return TextureManager.loadTexture(
+ FileFinder.findURL(url),
+ Texture.MinificationFilter.BilinearNearestMipMap,
+ Texture.MagnificationFilter.Bilinear);
+ }
+
+
/**
* Helper method to apply a ZBufferState to a node.
* @param node
*/
+ /*
public static void applyZBuffer(Node node) {
ZBufferState zbuf = DisplaySystem.getDisplaySystem().getRenderer().createZBufferState();
zbuf.setWritable(false);
zbuf.setEnabled(true);
zbuf.setFunction(ZBufferState.CF_LEQUAL);
node.setRenderState(zbuf);
- }
+ }*/
}