由於在JME 3.0的正式新手指南手冊中關注了地形教程,所以我遇到了同樣的問題。它開始幫助您使用Scene.j3o上的IDE上下文菜單創建地形,但是當他們開始在樹的位置上查看地形上的高度時,他們切換到使用TerrainQuad對象描述它,就像您說的那樣。
我很高興地說,我設法剛纔從這樣的.j3o提取TerrainQuad解決它:
Spatial terrainGeo = assetManager.loadModel("Scenes/bumpyScene.j3o");
TerrainQuad terrainQuad = ((TerrainQuad)((Node)terrainGeo).getChild("terrain-bumpyScene"));
Geometry someObject = new Geometry("SomeObject", new Box(.1f, .1f, .1f));
terrainQuad.getHeight(
new Vector2f(someObject.getLocalTranslation().x, someObject.getLocalTranslation().y));
在SceneExplorer你可以看到場景的結構和名稱。編輯器嚮導會創建一個TerrainQuad,如您所見,在示例中,我的TerrainQuad位於名爲「terrain-bumpyScene」的節點下。
作爲最後一個音符它可以幫助使用通過代碼遍歷節點調試某些問題,這個環節是非常有益的,我在解決任務:JME advanced docs, node traversal