gpt4 book ai didi

JAVA - JMonkeyEngine - 获取场景信息

转载 作者:太空宇宙 更新时间:2023-11-04 15:19:36 25 4
gpt4 key购买 nike

我正在开发 JMonkeyEngine 3.0

我的 map 位于 Scene.j3o

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

此外,我想使用简单的草系统来创建 2 个四边形,旋转它们,设置 Material 并克隆它们并添加到 map ,但我不知道如何获取地形的高度,这是教程中的行:

  float y = myTerrainQuad.getHeight(new Vector2f(x, z));

最佳答案

我遇到了和你一样的问题,遵循 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”的节点下。

SceneExplorer Window in JME IDE

最后一点,通过代码遍历节点来调试某些问题可能会很有帮助,此链接对我解决任务非常有帮助:JME advanced docs, node traversal

关于JAVA - JMonkeyEngine - 获取场景信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20543815/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com