android - 如何在滑动开始时触发 Lean FingerSwipe 事件?
问题描述
我正在 Unity 中开发一款手机游戏,我需要控制非常灵敏。我使用 Lean Touch 资产进行触摸检测。我正在使用 Lean FingerSwipe 脚本在四个方向(上、右、下、左)上控制我的播放器,该脚本在滑动结束时触发。
我的问题是我希望事件在滑动开始时触发,而不是在结束时触发,但我找不到这样做的方法。你知道是否有这样做的选择或论据吗?
谢谢
解决方案
您可以通过在手指增量超过滑动阈值时准确触发滑动来使滑动感觉响应。而不是等待手指被抬起。
从 LeanTouch 示例中复制和修改LeanFingerSwipe.cs 。
首先,而不是OnFingerSwipe
订阅OnFingerSet
.
LeanTouch.OnFingerSet += HandleFingerSwipe;
其次,在HandleFingerSwipe
函数内部,添加一个守卫。
if (finger.SwipeScreenDelta.magnitude * LeanTouch.ScalingFactor > LeanTouch.Instance.SwipeThreshold)
{
HandleFingerSwipe(finger, finger.StartScreenPosition, finger.ScreenPosition);
}
推荐阅读
- php - PHP array get values
- bash - Shell script finally block
- typescript - 打字稿:确保函数可以返回联合类型中的每个值
- vba - Application.wait 没有在它被写入的地方执行
- python - 为什么 Sqlite3 表不会更新
- fortran - 如何解决 fortran 代码块上的未定义引用?
- java - 此服务器在故障服务器列表中(本地异常失败:org.apache.hadoop.hbase.ipc.FailedServerException)
- android - 找不到NavigationView如何解决
- c++ - 有没有办法从 Codeclocks 绘制到 Matlab
- sql - 空闲时间学习 SQL