我正在为 sphero,机器人球(他们的论坛有问题,似乎无法提问)编写游戏。我正在尝试为 2 名或更多球员进行球对球碰撞检测。
首先,他们在这里提供了一个示例: https ://github.com/orbotix/Sphero-iOS-SDK/tree/master/samples/CollisionDetection
他们提供的阈值太敏感了,在木地板上它一直触发。暂时忘记这一点,我必须使用两个设备的影响时间戳来查看它们是否大致同时触发了碰撞。
我的问题是在减去时间戳时,在某些情况下我会得到非常广泛的变化,而且我认为差异一开始就很长。我存储了几个时间戳,所以我不会错过正确的时间戳,我尝试使用死时间来查看降低它是否会有所帮助。
最常见的是减去 2 个 NSTimeIntervals 我得到 0.68 和 0.72 之间的差异(我预计会有 0.01 级反应)。所以我检查差异是否低于 0.72,连续 3 次我在 0.72 和 0.73 之间,有几次我得到 1.5、2.6、1.1 甚至 3.8。
它似乎并不可靠。文档说这次来自 iPhone 参考。两台设备都会同步以自动获取时间,因此它们尽可能彼此靠近。
有没有人试过这个并想出一个可靠的解决方案,不涉及保持一个球静止?