Collision Tree设计的思路

本文介绍了一种用于游戏开发中的高级碰撞检测技术——碰撞树。该技术可以实现精确到三角形级别的碰撞检测,如子弹击中坦克的具体位置。文章讨论了碰撞树的设计思路,包括模型预处理、使用AABB作为节点包围盒、简化复杂模型的方法以及如何处理带骨骼动画的角色碰撞。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

 

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

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

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

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

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

 

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

updated 2009-05-22

新增了几张截图

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值