首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JAVA - JMonkeyEngine -获取场景信息

JAVA - JMonkeyEngine -获取场景信息
EN

Stack Overflow用户
提问于 2013-12-12 20:38:18
回答 1查看 376关注 0票数 1

我正在开发JMonkeyEngine 3.0

我的地图在Scene.j3o

我想添加细节级别,但我不知道如何获得地形的几何形状。我发现很少的代码,但所有的都是基于高度图地形,并使用TerrainQuad。

我也想使用简单的草地系统来创建2个四边形,旋转它们,设置材质并克隆它们,然后添加到地图上,但我不知道如何获得地形的高度,下面是教程中的代码:

代码语言:javascript
复制
  float y = myTerrainQuad.getHeight(new Vector2f(x, z));
EN

回答 1

Stack Overflow用户

发布于 2014-12-05 23:25:11

我和你有同样的问题,我已经学习了JME3.0的官方入门指南中的地形教程。它首先帮助您使用Scene.j3o上的集成开发环境上下文菜单创建地形,但当他们开始查看地形上的高度以放置树木时,他们会切换到使用TerrainQuad对象来描述它,正如您所说的那样。

我非常高兴地说,我刚刚通过从.j3o中提取TerrainQuad解决了这个问题:

代码语言:javascript
复制
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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20543815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档