2011-11-19 1 views
0

jMonkeyEnging에서 지형 생성을 시도하고 있으며 튜토리얼 (http://jmonkeyengine.org/wiki/doku.php/jme3:beginner:hello_terrain)을 따라했지만 약간의 문제가 발생했습니다.jMonkeyEngine3 (jME3) 지형에 대한 세부 수준

1. Cannot Find Symbol: class list 
2. Cannot Find Symbol: class camera 
3. Cannot Find Symbol: class arrayList 

나는 상세 코딩의 수준을 삭제하면 실행하면 다음과 같은 에러가 발생합니다 :

1. SEVERE: Uncaught exception thrown in Thread[LWJGL Renderer Thread,5,main] 
java.lang.NullPointerException 
    at mygame.Main.simpleInitApp(Main.java:35) 
     at com.jme3.app.SimpleApplication.initialize(SimpleApplication.java:231) 
    at   com.jme3.system.lwjgl.LwjglAbstractDisplay.initInThread(LwjglAbstractDisplay.java:129) 
    at com.jme3.system.lwjgl.LwjglAbstractDisplay.run(LwjglAbstractDisplay.java:205) 
    at java.lang.Thread.run(Thread.java:722) 
simpleInitApp 방법 코드의 마지막 chunck (세부 수준)에서, 나는 오류를 얻고있다

는 그 튜토리얼에없는, 무슨 일을하고있는 중이 야 (이하 내 코드)

package mygame; 

    import com.jme3.app.SimpleApplication; 
    import com.jme3.material.Material; 
    import com.jme3.terrain.geomipmap.TerrainLodControl; 
    import com.jme3.terrain.heightmap.AbstractHeightMap; 
    import com.jme3.terrain.geomipmap.TerrainQuad; 
    import com.jme3.terrain.geomipmap.lodcalc.DistanceLodCalculator; 
    import com.jme3.terrain.heightmap.HillHeightMap; // for exercise 2 
    import com.jme3.terrain.heightmap.ImageBasedHeightMap; 
    import com.jme3.texture.Texture; 
    import com.jme3.texture.Texture.WrapMode; 
    import jme3tools.converters.ImageToAwt; 

    /** 
    * test 
    * @author Me 
    */ 
    public class Main extends SimpleApplication { 

     public static void main(String[] args) { 
      Main app = new Main(); 
      app.start(); 
     } 

     private TerrainQuad terrain; 
     Material mat_terrain; 

     @Override 
     public void simpleInitApp() { 
      flyCam.setMoveSpeed(50); 

      //add grass to the mat_terrain 
      Texture grass = assetManager.loadTexture("Textures/grass.jpg"); 
      mat_terrain.setTexture("tex1", grass); 
      mat_terrain.setFloat("tex1Scale", 64f); 

      //add dirt to the mat_terrain 
      Texture dirt = assetManager.loadTexture("Textures/dirt.jpg"); 
      mat_terrain.setTexture("tex2", dirt); 
      mat_terrain.setFloat("tex2Scale", 32f); 

      //add roads to the mat_terrain 
      Texture road = assetManager.loadTexture("Textures/road.jpg"); 
      mat_terrain.setTexture("tex2", road); 
      mat_terrain.setFloat("tex3Scale", 128f); 

      //deal with the generation 
      AbstractHeightMap heightMap = null; 
      HillHeightMap heightmap = null; 
      try { 
       heightmap = new HillHeightMap(513, 1000, 50, 100, (byte) 3); 
      } catch (Exception ex) { 
       ex.printStackTrace(); 
      } 

      //create the world 
      int patchSize = 65; 
      terrain = new TerrainQuad("my terrain", patchSize, 513,     heightmap.getHeightMap()); 

      //material, position, scale 

      terrain.setMaterial(mat_terrain); 
      terrain.setLocalTranslation(0, -100, 0); 
      terrain.setLocalScale(2f, 1f, 2f); 
      rootNode.attachChild(terrain); 

      //LOD 
      List<Camera> cameras = new ArrayList<Camera>(); 
      cameras.add(getCamera()); 
      TerrainLodControl control = new TerrainLodControl(terrain, cameras); 
      terrain.addControl(control); 
     } 
    } 

답변

0

당신은 java.util의에서 (목록 및 ArrayList를뿐만 아니라 (렌더링 jME3에서 패키지) 카메라를 가져올 필요).

jME 관련 질문을 게시하려면 http://jmonkeyengine.org/forum

으로 게시하는 것이 좋습니다.
관련 문제