开始完善碰撞检测系统。

动力学系统完成的差不多了,接下来要完善碰撞检测系统,在物理引擎中,碰撞检测系统一般分为广通道、窄通道、接触确定三部分,有的也会把窄通道和接触确定合并在一起。
广通道用于快速的剪除没有碰撞的对象,对这个通道有两个基本要求,1:要执行的尽可能快,2:要剪除尽可能多的对象,基于此,广通道一般会利用空间一致与时间一致,利用空间一致,就产生了和空间分割有关的算法,如均匀网格、多级网格、八叉树和坐标排序(SAP)等,时间一致则用于对象的在空间数据结构中的重定位,在tde中,采用SAP做为广通道碰撞检测算法。
窄通道有基于特性的算法(如VClip)、基于距离的算法(如GJK)、基于图元的算法(也就是对于每种图元都有一种特定的算法)及有符号距离网格法,这些算法各有各的特点,tde采用了基于图元的算法,通过看ode的文件名,它也采用了此法。
最后的接触确定,用于判断是否真的接触、计算接触点、接触法线、穿透深度,用于后序的碰撞反应。

posted on 2008-09-15 11:00  youweibin  阅读(512)  评论(0编辑  收藏  举报

导航