FingerGestures 3.1 插件详解
最近做一款游戏需要手势识别,网上搜了很多此插件用法仍然一知半解,经过一番求助,最终可以初步使用此插件。在此总结分享,欢迎指正。
此插件可在Unity官方商店下载也可在文末网盘链接下载
下载完成之后直接导入Unity工程接下来来介绍记录一下此插件中的目录结构:
路径,相对Assets/Plugin/… | 描述 |
---|---|
FingerGestures/ | 插件的根目录 |
FingerGestures/Prefabs | 可以直接拖放到场景中的预设资源(prefabs) |
FingerGestures/Scripts | 核心脚本和组件 |
FingerGestures/Scripts/Gesture Recognizers | 每个手势识别 的脚本 |
FingerGestures/Scripts/Finger Event Detectors | 每个触摸事件检测器的脚本 |
FingerGestures/Scripts/Components | 手势识别和触摸事件所需要添加的额外组件 |
FingerGestures/Toolbox | FingerGestures 自带的工具箱脚本 |
FingerGestures/Samples.unitypackage | 所有例子的子包 |
FingerGestures/PlayMaker Actions.unitypackage | FingerGestures对PlayMaker扩展的插件 |
Editor/FingerGestures | FingerGestures对编辑器的扩展 |
对目录结构各脚本预制有个基本了解之后开始使用它。在网上找了好多教程都是如下操作:
1.导入插件
点击Import导入完成
2.将如下预制体拖入项目场景Hierarchy
注:FingerGesture预制最好放在整个场景的最外层如图示 若将其放在某个预制内部 在销毁创建预制的时候会有坑出现有兴趣的可以看看源码。
3.在当前场景创建一个空物体在空物体上添加你需要手势的对应脚本组件
4.这里先添加一个拖动时别添加后如图:
创建脚本FingerTest.cs并创建一个方法,方法名要与脚本DragRecognizer中蓝色方框勾选的方法名一致,方法名如下脚本 :
将此脚本挂载在场景中任意游戏物体身上并将此游戏物体赋给脚本DragRecognizer中的MessageTarget运行打印出日志如图:
这是其中拖拽手势 其余的各种手势只需对应在第三步中选择添加不同脚本组件 然后在脚本中写对应名称的方法。这种做法显得有些杂乱不太简洁。下面介绍一下方便的手势方法调用。
使用C#的事件简化手势方法调用
1.重复之前的插件导入操作,将指定预制拖入场景中,接下来我们将所有的我们需要的手势脚本组件都添加到我们先前拖动到场景的预制体上如图示: