Physijs - ConvexMesh墙碰撞检测问题

时间:2014-11-29 02:00:24

标签: three.js collision-detection convex-polygon physijs

我使用Three.js和Physijs。我有一个墙应该作为边界,但如果力足够,物体(特别是盒子)经常穿过它。检测到碰撞,因为它们没有干净地进行,但它们开始旋转或在某个方向反弹。有没有办法增加墙可以作用在碰撞物体上的最大力?

所有四个墙的点都在同一平面上,形成一个矩形。网格由两个大的三角形面组成。我正在使用ConvexMesh。

将两个三角形分成许多较小的三角形并不能解决问题。

我可以确认法线正常,因为墙壁正确着色。

如何解决这个而不将墙转换成BoxMesh

我也很感激为什么会发生这种情况的解释。我猜测发动机会限制碰撞可以施加的最大力。

1 个答案:

答案 0 :(得分:1)

我认为它是运动夹紧

https://github.com/chandlerprall/Physijs/wiki/Collisions

  

当物体具有高速度时,如果碰撞可能会错过   在模拟步骤之间移动并经过其他对象。修理   这样,就可以实现CCD运动夹紧。对于大小为1的立方体,请尝试:

     

//如果物体在一次模拟中移动超过1米,则启用CCD   frame mesh.setCcdMotionThreshold(1);

     

//设置嵌入球体的半径,使其小于   对象mesh.setCcdSweptSphereRadius(0.2);

希望这可以尝试现在尝试