unity接收Android和iOS原生touch数据
unity版本2018.3.18lts
想自己获取设备的touch数据、起因是unity的input数据中的timestamp受限于帧的间隔时间,0.1666…,leader说这样触摸的精度会大打折扣(总之是有问题的,具体解释再说吧…不知道我理解的对不对),但是系统自己的数据时间是准确的,于是我们自己获取了Android和iOS的设备数据。
Android
Android比较繁杂,改天再说\ ( @ @ ) /
iOS
iOS接口比较简单(但是也写了挺久的,查了好多资料),按文档touchbegan、touchmoved、touchstationary、touchended、touchcancelled五个接口,自定义一个函数把touch原生数据通过c#回调函数传递过去,然后就可以在c#中操作了。
简单说一下,iOS视图的概念很多地方也有介绍,视图之间的touch数据是有截获的,也有传递,所以我们自己建立了一个view,然后放到unityview下成为其子视图,并把我们的视图截获的数据再传递出去。
由于作者专业度不够,再加上代码也写了有一段时间,所以表达不够准确,大概那个意思吧,写技术文好难啊,好多细节说不明白,祝自己再接再厉 < (@ @ ) >
说不明白那就把帮过我的文章都贴出来吧,感谢各位大牛的无私,也给各位路过的朋友指个方向
iOS UIEvent和UIResponder官方文档讲解
TouchEvent事件分发机制全解析
iOS 事件传递(Touch事件)
ios 关于UIView 的multipleTouchEnabled 和 exclusiveTouch
UnityiOSNativeAudio
顺便把Android的也贴出来
Android MotionEvent详解
Android中Touch事件传递总结
事件处理之onTouchEvent()和onTouch()方法精炼详解
以上帮助肯定都是有的,但是具体哪方面我真说不清道不明了,而且也有好多有用的文章我可能并没有收藏,代码写了就忘,细节打败了我,这第一篇惨不忍睹,也给自己提了醒,希望以后能写出有用的文章。
祝各位天天开心 ~ ~ ( ^ ^ ) ~ ~ 今年快乐