我正在考虑使用加速度计作为控制黑莓游戏的输入通道。但是,我只想在用户向左或向右猛烈运动时响应它。
所以我的问题是:用户手持设备的期望输入范围是多少?我应该设置什么阈值来确保我在游戏过程中不会对正常运动做出反应?
我正在考虑使用加速度计作为控制黑莓游戏的输入通道。但是,我只想在用户向左或向右猛烈运动时响应它。
所以我的问题是:用户手持设备的期望输入范围是多少?我应该设置什么阈值来确保我在游戏过程中不会对正常运动做出反应?
API 文档指定硬件可以测量的最大 G 力加速度通常为 2G,因此如果您想要“剧烈”摇晃,那将是一个不错的数字。
但是,我强烈建议编写一个快速测试应用程序,记录加速度计的值并向您显示它正在记录的实际值(记录到日志文件或仅跟踪当前的“最大值”)。然后只是玩弄设备并确定“正常”使用和“剧烈摇晃”的最佳阈值。
我按照马克的回答做了,我写了一个测试,给了我输入的范围。每个 x、y 和 z 轴的值都可以是 -1048 到 1048(据我所知)。在4.7 API 文档中有关于如何使用 AcceleratorSensor 读取这些值及其含义的附加信息。
在对设备进行进一步测试后,我发现 50 毫秒内任何方向的 +/- 1000 变化足以将正常运动与震动区分开来。