物理引擎box2d和p2效率那个比较高?

RT,我在做一个物理碰撞需求很高的游戏,但游戏在发布到微信小游戏上,实机测试时非常卡,简单实验发现,造成性能低下的原因是物理运算开销太大.
我尝试修改FIXED_TIME_STEP的值,但并没有用(原因未知,且enabledAccumulator已经设为true).
于是我准备尝试使用p2物理引擎.
所以在动手之前,想先问问有没有朋友用过p2,效率如何?以及box2d和p2的优缺点?p2在creator中应用有什么坑需要避免的?
希望论坛的大神们不吝赐教!

c
c++版本box2d,真机上超过一百个单位运动碰撞,基本就要卡了
微信小游戏,性能太差,你想做复杂的物理游戏,我看没啥希望啊。
可以先写个简单测试代码,在微信小游戏上跑跑,再决定做不做,不然达不到效果,都白弄。

感谢,根据我目前的测试情况来看,60个矩形的碰撞,在微信小游戏平台,box2d稳定在30帧,p2则好一些基本60帧;但碰撞效果确实是box2d更好,且更平滑,不会出现60直接到30的瞬间卡顿;而p2虽然帧数高,但会出现瞬间大幅掉帧的情况,就视觉效果而言box2d比较好;如果对物理碰撞的真实性不做追求,p2或许更好.
还有一点比较奇怪,为什么我设置FIXED_TIME_STEP不会生效…官方可有相关例子可以参考?

你直接传入一个固定值就行了啊,比如1/60.0f

你也可以试试这个
https://github.com/shakiba/planck.js

2赞

p2性能要好很多,但是速度快后会出现穿透的情况

最近我也在做这个,基本50个刚体相互碰撞就会卡了,请问你最后的解决方案是什么呢?

我在后来的一段时间里,都是用p2作为物理引擎,原因就是多物体下效率会高很多,直到creator更新2.0后,引擎升级box2d的效率也能达到之前p2的效果,所以重新用回自带的物理引擎了.如果你是2.0版本,那直接使用自带的物理,没问题的

老哥 请教一下 我也要做类似的很多碰撞体的游戏,你的结论是现在P2跟box2d性能差不多吗? 我也准备尝试一下P2。 IOS上面性能实在扛不住

用白鹭的时候用过p2,那是一段痛苦的日子。。。p2的资料太少了。。而且都是英文的。。。