iOS 游戏陀螺仪 - 如何在用户需要静止时检测作弊
iOS gyroscope for game - how to detect cheating when the user needs to be still
我目前正在制作游戏,并且我计划使用陀螺仪作为其中一个控件。由于其中一个条件是 phone 保持稳定一段时间,谁能想出任何巧妙的方法来检测是否有人只是将 phone 放在平坦的表面上并离开了它?
我考虑过使用加速度计来检测它是否被快速放下,但如果他们正在旅行和玩耍(这是一款休闲游戏),这将给出错误的读数并可能错误地惩罚人们。我也考虑过接近传感器,但这需要将 phone 面朝下放在 table 上,以便检测他们是否在作弊,所以显然也不是解决方案。要么他们需要弯腰看设备。
谁能想到什么好的解决方案,或者我只是在这里用一个想法吠叫错误的树?
我能想到的唯一其他可能的解决方案是大圆圈内有一个小圆圈,他们必须使用陀螺仪使其尽可能靠近中间。我可以时不时地随机创建 "wobbles"(就像在旧的杀手游戏中,狙击步枪实际上永远不会 100% 静止以模拟自然呼吸摆动等)
can anyone think of any ingenious ways to detect whether someone has simply placed their phone on a flat surface and left it?
没有人可以完全静止不动一段时间。摄影师想尽办法用慢速快门拍摄,但只是你的呼吸和心跳产生微小的运动。
连接一个简单的测试项目,使用 Core Motion 查看 accelerometer data when you're holding the device as still as you possibly can and also when it's sitting on a table. iOS apps often use a low-pass filter 以过滤掉那些微小的随机运动,只查看大的、缓慢的、有意的运动;你可能想做相反的事情,看看小的、高频的变化,这将是一个试图保持稳定的人和一个真正一动不动的 table 之间的区别。
我目前正在制作游戏,并且我计划使用陀螺仪作为其中一个控件。由于其中一个条件是 phone 保持稳定一段时间,谁能想出任何巧妙的方法来检测是否有人只是将 phone 放在平坦的表面上并离开了它?
我考虑过使用加速度计来检测它是否被快速放下,但如果他们正在旅行和玩耍(这是一款休闲游戏),这将给出错误的读数并可能错误地惩罚人们。我也考虑过接近传感器,但这需要将 phone 面朝下放在 table 上,以便检测他们是否在作弊,所以显然也不是解决方案。要么他们需要弯腰看设备。
谁能想到什么好的解决方案,或者我只是在这里用一个想法吠叫错误的树?
我能想到的唯一其他可能的解决方案是大圆圈内有一个小圆圈,他们必须使用陀螺仪使其尽可能靠近中间。我可以时不时地随机创建 "wobbles"(就像在旧的杀手游戏中,狙击步枪实际上永远不会 100% 静止以模拟自然呼吸摆动等)
can anyone think of any ingenious ways to detect whether someone has simply placed their phone on a flat surface and left it?
没有人可以完全静止不动一段时间。摄影师想尽办法用慢速快门拍摄,但只是你的呼吸和心跳产生微小的运动。
连接一个简单的测试项目,使用 Core Motion 查看 accelerometer data when you're holding the device as still as you possibly can and also when it's sitting on a table. iOS apps often use a low-pass filter 以过滤掉那些微小的随机运动,只查看大的、缓慢的、有意的运动;你可能想做相反的事情,看看小的、高频的变化,这将是一个试图保持稳定的人和一个真正一动不动的 table 之间的区别。