有什么高效的碰撞检测方法呢?解决方法
有什么高效的碰撞检测方法呢?我用现在的方法虽然能实现,但是想做到最好,不知道有没有其它的关于碰撞检测的
有什么高效的碰撞检测方法呢?
我用现在的方法虽然能实现,但是想做到最好,不知道有没有其它的关于碰撞检测的高效方法呢?
[解决办法]
[解决办法]按判断方法分2种,单步判断和时间段判断。
单步就是每次(帧)计算移动后是否和其他东西相交(边界盒啊,胶囊体之类)
单步在物体速度比较快的时候(相对于检测步长过大),可能会出现穿透效果无法检测。
时间段的比较复杂些,需要计算一段时间内,物体碰撞检查体的运动轨迹,并求碰撞时间。
一般是射线+包围体。包围体沿射线移动。
然后就是各种形状碰撞体间的检测了,上面那本书里面基本上都有。
[解决办法]1,先在屏幕上划分区域,只检测周围的格子里的对象.(针对大量对象检测)
2,射线法。
[解决办法]对游戏场景进行空间划分,之后就只需要检测同在一个子空间中的实体了,会减少很多需要
参与碰撞检测的实体数量,
1楼说的那本书《实时碰撞检测算法技术》里就有讲述八叉树空间划分的技术