碰撞经常出现穿透

cocos自带的物理比较消耗性能,然后楼主买了一个碰撞的插件,但是它的移动方式是设置位置来进行移动
所以速度快了的时候经常出现穿透问题,不知道该怎么解决,请教各位有没有什么方式可以解决或者有没有什么插件可以解决穿透问题?

  • Creator 版本:

速度过快,使用射线的方式检测

1赞

对超出速度限制的物体,每帧检测多次,例如速度降低1/3,移动3次。

1赞

答案就是上述两层所说的,具体来说就是记录上一帧的位置与当前帧的位置,求得一个向量,利用这个向量做一下射线检测,开销是有的,但是只有速度快的才需要这个,整体来说还好

1赞

上面都是好办法。如果计算量大,射线检测的逻辑可以放 wasm 里处理

1赞

可以分段射线检测,但之前测试下来发现如果速度过快依然会穿透,后来是自己维护所有刚体的实时坐标并用Intersection2D.pointInPolygon检测才能保证稳定

谢谢各位,我去试试

那是你计算有问题