gpt4 book ai didi

java - JMonkey - 向十字线方向射击

转载 作者:行者123 更新时间:2023-12-01 18:48:24 27 4
gpt4 key购买 nike

如何朝十字准线指向的方向拍摄?

使用 JMonkey 引擎,我正在创建一个游戏,我需要一艘船来射击其他船。

因此,我创建了可以根据用户输入在屏幕上移动(上、下、左、右)的十字准线,以便用户可以瞄准某个位置。

现在我需要从我的船上向十字准线所在的方向发射一门大炮。

如何在十字准线所指的地方拍摄?

最佳答案

您可以通过以下方式获取相机方向:

directionXYZ=cam.getDirection(); //Vector3f form

并且可以从以下位置获取位置:

positionXYZ=cam.getLocation(); //Vector3f

您可以进行光线转换:

 Ray ray = new Ray(directionXYZ, positionXYZ);

然后可以收集碰撞数据:

shootables.collideWith(ray, results)

其中可射击是一个“节点”。

最后,检查您想要什么:

 for (int i = 0; i < results.size(); i++) {
// For each hit, we know distance, impact point, name of geometry.
float dist = results.getCollision(i).getDistance();
Vector3f pt = results.getCollision(i).getContactPoint();
String hit = results.getCollision(i).getGeometry().getName();
System.out.println("* Collision #" + i);
System.out.println(" You shot " + hit + " at " + pt + ", " + dist + " wu away.");
}

取自 jmonkey wiki

关于java - JMonkey - 向十字线方向射击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16703407/

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