Directx 9地形碰撞

时间:2011-02-28 04:15:18

标签: c++ winapi directx

我搜索过,我找到了一些教程如何进行地形碰撞,但他们使用的是.raw文件,我正在使用.x。但是,我认为我可以做同样的事情。他们使用对象的x,y,z值可以对照地形中的每个三角形进行检查。这很有道理,但看起来会很慢。就像挑选每个三角形的检查一样慢 是否有更好的方法来做到这一点并且很好? 的更新
我的地形不平坦,如果是我会使用边界框。

2 个答案:

答案 0 :(得分:1)

上次我这样做时,我使用了Bullet库,效果很好。它有多种collision shapes可供选择,针对不同场景进行了优化,包括一般三角网格和高度场。您可以在没有物理的情况下使用库的碰撞例程。

答案 1 :(得分:0)

显着减少检测冲突所需时间的一种常用方法是将空间组织为octree,这样您就可以非常快速地确定特定节点中是否可能发生冲突。一般来说,使用游戏引擎完成这些任务更容易。