package sg; import com.jme.app.SimpleGame; import com.jme.renderer.ColorRGBA; import com.jme.scene.Skybox; import com.jme.scene.state.LightState; import com.jme.image.Texture; import com.jme.light.PointLight; import com.jme.math.Vector3f; import com.jme.util.TextureManager; public class SpaceGame extends SimpleGame { private Skybox skybox; private LightState lightState; public static void main(String[] args) { SpaceGame app = new SpaceGame(); app.setConfigShowMode(ConfigShowMode.AlwaysShow); app.start(); } protected void simpleInitGame() { display.setTitle("SpaceGame"); buildSkyBox(); rootNode.attachChild(skybox); buildLighting(); rootNode.setRenderState(lightState); } public void simpleUpdate(){ skybox.setLocalTranslation(cam.getLocation()); } private void buildSkyBox() { 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(); } private void buildLighting() { /** Set up a basic, default light. */ PointLight light = new PointLight(); light.setDiffuse( new ColorRGBA( 1.0f, 1.0f, 1.0f, 1.0f ) ); light.setAmbient( new ColorRGBA( 0.5f, 0.5f, 0.5f, 1.0f ) ); light.setLocation( new Vector3f( 100, 100, 100 ) ); light.setEnabled( true ); lightState = display.getRenderer().createLightState(); lightState.setEnabled( true ); lightState.attach( light ); } }