原创  Collision Tree设计的思路 收藏

 最近需要实现精确到三角形的模型碰撞,比如子弹击中坦克,迸出火花,这时候就需要精确得到子弹击中的位置,这时候就需要使用collision tree来进行三角形级别的碰撞了。

 现在的设计思路是这样的:

 1.对每一种模型在编辑器里进行预处理,生成一颗碰撞树。对某些模型来说,如果面数太多,可以让美术做一个低模,也可以让程序做一个自动减面的工具,根据不同程度来进行调节; 对某些特殊模型来说,如果凸包能较好地包围的话,用凸包来替代也可以。

 2.tree的Node的外部包围盒采用AABB,OBB计算太多,sphere精确性太差

 3.主要侧重于比如子弹这种简单碰撞体和collision tree的检测,貌似collision tree之间的Intersect,目前还没想到有啥应用的需要。

 4.对于人物带骨骼动画,可以在每根骨骼绑定一个obb,更新骨骼时一起更新obb,然后用Obb来做碰撞。

---------------------------------------------------

updated 2009-05-22

新增了几张截图

发表于 @ 2009年05月19日 08:35:00 | 评论( loading... ) | 编辑| 举报| 收藏

旧一篇:Swing JSpinner里使用格式化的Float | 新一篇:C++ 学习 5 levels

  • 发表评论
  • 评论内容:
  •  
Copyright © xueyong1203
Powered by CSDN Blog