两个玩家的iPad应用程序 - 哪个玩家触摸屏幕?

时间:2013-12-28 13:37:38

标签: ios objective-c ipad

理论上是否可以在两个玩家iOS游戏中检测哪个玩家正在触摸屏幕?让我们说这是一个棋盘游戏和数字的棋盘游戏。如果我们使用前置摄像头,我们是否可以使用某种计算机视觉来检测屏幕上“屏幕对面”播放器的屏幕?

1 个答案:

答案 0 :(得分:2)

不确定。特别是因为这都是理论上的。让我们考虑一下......

假设:

您使用iPad标记了此问题,因此我认为您的意思是在这样的设备上。

我们假设设备是垂直播放的,这意味着相机最接近特定播放器,它们的间隔不均匀。

我们假设用户不会在任何时候切换位置。

这场比赛是国际象棋。

<强>过程:

我们可以做一些事情来确定某个用户点击屏幕的相当高的准确度。

第1步

由于相机位于设备的一侧,我们可以通过相机连续录制,并以编程方式移除录制的大部分外边框,并等待环境发生变化。

然后,如果相机侧面的人移动他们的手进行移动,他们最终将覆盖相机,然后我们可以转到第2步。

如果没有相机覆盖,但我们有一个水龙头,假设我们正在谈论相机对面的玩家并转到第3步。

第2步

一个人只是将手移到相机上,现在检查是否在5秒内发生了敲击。

如果相机阻挡是云,其他人或身份不明飞行物的错误,我们不应该尽快点击。

好的,我们只是在5秒钟内完成了一次点击,所以我们非常确定这是相机一侧移动的玩家。为了确保,我们可以为游戏添加更高级的逻辑。也就是说,

第3步

在整个游戏过程中,每次点击发生时,我们猜测它是哪个播放器,测量加速度计和陀螺仪的近似变化。理想情况下,每个玩家都会使用我们可以检测到的某种模式。

现在,当我们认为我们知道哪个玩家点击了屏幕时,进行一些比较。如果水龙头与我们认为不合适的人的模式几乎完全相同,请切换目标玩家。相机附近的玩家搞砸了。

<强>结论

使用这种技术,我们可以非常仔细地预测谁敲击屏幕,我们甚至不需要任何物理比较。当然,存在一些潜在的问题,但没有更多的算法无法修复。

基本上,你问过是否有可能,我认为这肯定是。