做了个桌球demo,物理引擎每次产生的结果不一样

给予白球相同的角度,力度,每次碰出去后。进的球不一样。但是跑100次也不是都不一样,只有那么几种结果。
难道box2d引擎里面有一些随机数据吗,如果是这样使用这个引擎就增加了很多不确定性。

1赞

请问,瞄准时的参考线,带反射的那种,有做吗?
怎么做的?

http://samael65535.github.io/2019-07-15/light_bulb/

浮点数造成的。

用raycast或者自己实现都很简单,你知道了球的x和y的力量,就相当于知道了球的角度,然后反方向取角度。

感谢啊,能不能说详细点
我在碰撞时打印了力量方向,的确变成了一个小数点后很大的浮点数,但是每次打印的值还是一样的。但是其他球还是轨迹不一样。

不同设备的浮点数精度是不一样的,即使保证方向等数据的浮点数是一模一样的,也无法保证物理引擎计算时产生的浮点数。

https://forum.cocos.com/t/h5/66181?u=110169

mark一下,寻找浮点数问题解决思路

那你把浮点数去掉取整数不就好了

mark

做出来了么?我现在射线检测不准确,做出来的话,给个思路

能提供下你这个球体怎么做到旋转的吗? 是3d球体吗? 为啥我的球只能水平滚动。 感谢。。。