前言
EasyTouch是一个使用非常广泛的插件,支持点击,拖拽,遥感等很多常用功能,使用EasyTouch,省去了我们很多时间去封装点击,遥感之类的功能。
不过最近,在Unity的AssetStore搜索EasyTouch,发现搜索不到EasyTouch5 了,只剩下其它插件,比如LeanTouch等插件 和 Easy Touch Controls(老版EasyTouch)等等
摸索一番后,只从Easy Touch Controls的描述里面可以连接到下面的信息
所以很遗憾,目前EasyTouch4.x和5.x都已经下架了,只有一个老版的Easy Touch Controls,但是它最后一次更新是2016年,比较久远了,不太清楚HedgehogTeam公司在搞什么?难道被收购了?
不管了,无论如何EasyTouch5.x 依然是我们使用比较频繁的一个处理触摸的插件,网上还是可以下载到插件的。
另外,现在商店里面有一个LeanTouch插件使用比较多,评分也很高,所以我在好奇心的驱使下,想比较一下二者。
EasyTouch和LeanTouch对比
下面就对EasyTouch和LeanTouch做下功能和性能对比,
Easy | Lean | |
Tap | Tap | |
Down,Move,Up | Down,Move,Up | |
Pinch | inch | |
功能 | Twist | Twist |
UGUI+NGUI+3D | UGUI,3D | |
多指触控 | 多指触控 | |
遥感 | 无 | |
… | … | |
gc | 点击有GC | 无GC |
package大小 | 35M | 4M |
总结
- Easytouch使用功能较,且多较方便,只需要添加一个EasyTouch组件即可,脚本中添加固定的监听事件就可以了,但是缺点就是有gc,每次点击差不多250B的gc,多指点击的话gc更多。原因就是因为每次点击都会new一个 Gesture出来。当然,这点gc可以忽略不计,还没有一个string拼接的gc多。
- LeanTouch插件,它设置了不同的组件,像LeanFingerTap和LeanFingerSwip等,你用什么功能就添加什么组件,当然这也是一个很好的设计,看个人习惯了,也有点击拖拽等事件监听。最好的是,点击没有gc,不管是单指还是多指,所以如果有性能偏好的话可以考虑。
结尾
总的来说,这类touch插件,原理都差不多,就是设计模式可能不同,如果你使用非常简单,当然也可以自己写一个,不管是使用UI射线还是3D射线。只要不出错,都是好的。但是这些成熟的插件,其实都是经过了市场的检验,基本没有什么大问题,如果可以拿来直接使用也是不错的。
希望这篇文章能够对你有所帮助。