java中的碰撞检测
问题描述:
我对碰撞检测有一些疑问。我在java中使用LWJGL作为我的游戏。我没有这方面的经验,并且一直在关注游戏核心的薄矩阵OpenGL教程。我在html,css,C++和java当然有经验。 我一直在网上搜索,没有发现任何有用的东西。java中的碰撞检测
在我的游戏中实现3D碰撞检测的最简单方法是什么?
答
我会建议使用识别碰撞的3d引擎,比如jMonkey。 jMonkey可以使用LWJGL。这里有一个很棒的教程:http://wiki.jmonkeyengine.org/doku.php/jme3:beginner:hello_collision
如果你想像我一样滚动你自己,我创建一个散列在空间中的3d点。如果另一个对象具有相同的散列,则它具有接近的冲突
import static java.lang.System.out;
public class App {
public static int hash(float x, float y, float z) {
double hash = (((x * 31) + (y * 37) + (z * 41)));//31,37 and 41 are prime numbers
return (int) (hash);//multiplying the hash by 1000 for example may increase the accuracy significantly. Depends on the size of your space
}
public static void main(String[] args) {
for (float count = 0; count < 2; count += 0.01) {
out.println(hash(0, 0, count));
}
}
}
正如你可以看到输出中的散列显示关闭冲突,计数增加0.01。
0
0
0
1
1
2
2
2
3
3
4
4
4
5
5
6
6
6
您可以修改素数以获得更高的准确性。
+0
谢谢这是伟大的 – TheThirtyFirst
我想通过编辑问题重新打开他的问题。希望没关系。 – rjdkolb
好的感谢编辑 – TheThirtyFirst