今天,我们来学习下多手指触摸屏幕的事件,分别有挤压(缩放),挤压(旋转)

挤压(缩放):

在easytouch中,双手指挤压缩放的英文为Pinch

好了今天我们的测试是双手指挤压对物体进行缩放。我们测试的是Cube。

在easytouch中,分别有挤入(PinchIn)挤出(PinchOut)这这两个对立的触屏手势。

using UnityEngine;
using System.Collections; public class TouchTest : MonoBehaviour {
void OnEnable(){
EasyTouch.On_PinchIn += On_PinchIn;//挤入
EasyTouch.On_PinchOut += On_PinchOut;//挤出
EasyTouch.On_PinchEnd += On_PinchEnd;//挤压结束
} void OnDisable(){
UnsubscribeEvent();
} void OnDestroy(){
UnsubscribeEvent();
} // Unsubscribe to events
void UnsubscribeEvent(){
EasyTouch.On_PinchIn -= On_PinchIn;
EasyTouch.On_PinchOut -= On_PinchOut;
EasyTouch.On_PinchEnd -= On_PinchEnd;
} void Start(){
}
private void On_PinchIn(Gesture gesture){ if (gesture.pickObject == gameObject){ float zoom = Time.deltaTime * gesture.deltaPinch; Vector3 scale = transform.localScale ;
transform.localScale = new Vector3( scale.x - zoom, scale.y -zoom, scale.z-zoom);
}
} private void On_PinchOut(Gesture gesture){
if (gesture.pickObject == gameObject){
float zoom = Time.deltaTime * gesture.deltaPinch; Vector3 scale = transform.localScale ;
transform.localScale = new Vector3( scale.x + zoom, scale.y +zoom,scale.z+zoom); }
}
private void On_PinchEnd(Gesture gesture){ if (gesture.pickObject == gameObject){
print ("End");
} }
}

  这里注意一下,挤压的时候两个手指必须都接触到GameObject,不能一只有一只没有。

可能有些小伙伴还不知道怎么在电脑上测试,在easytoucjh的属性面板里面,我们发现按下Left Alt是默认的Pinch和Twist的按键。

挤压(旋转):

在easytouch中双手挤压旋转对应的英文为Twist

using UnityEngine;
using System.Collections; public class TouchTest : MonoBehaviour {
void OnEnable(){
EasyTouch.On_Twist += On_Twist;
EasyTouch.On_TwistEnd += On_TwistEnd;
} void OnDisable(){
UnsubscribeEvent();
} void OnDestroy(){
UnsubscribeEvent();
} // Unsubscribe to events
void UnsubscribeEvent(){
EasyTouch.On_Twist -= On_Twist;
EasyTouch.On_TwistEnd -= On_TwistEnd;
} void Start(){ }
private void On_Twist(Gesture gesture)
{
if (gesture.pickObject == gameObject)
{
print(gesture.twistAngle);
transform.Rotate(new Vector3(0,0,gesture.twistAngle));//旋转挤压的角度,
}
}
private void On_TwistEnd(Gesture gesture)
{
if (gesture.pickObject == gameObject)
{
print("End");
}
}
}

  

Unity-EasyTouch插件之Two Finger的更多相关文章

  1. 开发unity DLL插件

    最近开发一款设备的SDK,想着要开发unity版本,怎么做呢?首先想到的就是在外部编写相关的驱动程序然后集成成几个dll作为unity的SDK使用了.So,我就开始了unity外部插件的研究之旅了. ...

  2. (转)Unity Cinemachine插件,实现单目标和多目标之间切换

    Unity Cinemachine插件学习笔记,实现单目标和多目标之间切换*版本要求Unity2017.1及以上. 参考资料: [官方] Unity 2017.1正式版发布 Cinemachine插件 ...

  3. Unity——EasyTouch摇杆插件使用

    EasyTouch摇杆插件使用 Demo展示 双指缩放在电脑端无法掩饰,竖屏将就看看吧: 插件名叫EasyTouch,有需要给我留言,不想开仓库传了: 创建摇杆点这里: 初始化 On_Joystick ...

  4. unity常用插件

    Unity3D常用插件,网址:http://jingyan.baidu.com/article/7f766daf4ef2844100e1d079.html ,想想自己也有小半年unity经验了,于是整 ...

  5. 开源Unity小插件CheatConsole

    我们在开发游戏的过程中,通常都需要一些快捷的方式来进行一些非常规的测试,这些功能一般被称作控制台或者GM指令,比如虚幻竞技场中,可以使用~键呼出控制台,输入一些指令即可进行快捷设置,比如设置分辨率,全 ...

  6. 编写 Unity Editor 插件

    Editor Style Viewer 在开发过程中,我喜欢编写一些辅助的Editor插件,方便在游戏开发过程进行调试. 下面是摘自Asset Store的一个查看Unity 默认GUI样式的小工具 ...

  7. 【转】unity地形插件T4M使用帮助

    unity的地形系统在手机游戏中因为效率问题基本无法使用,只能通过T4M这个地形插件来进行优化制作.下面大概讲解一下使用流程及方法. 先中U3D里面用自带的地形系统刷出想要的地形和贴图.贴图可以大概刷 ...

  8. unity Dotween插件的简单介绍及示例代码

    unity里面做插值动画的插件有许多,比较常见的有itween.hotween.dotween.根据大家的反馈和实际体验来说,dotween插件在灵活性.稳定性.易用性上都十分突出.这里简单介绍下它的 ...

  9. Unity给力插件之ShaderForge(一)

    这是一个用来制作shader的插件,也是一个很好的学习shader的工具.这个插件上手很容易,但是要用它来制作理想的Shader,需要下点功夫. 这儿先列举出基础知识,以及我的一些实践.以后我还会继续 ...

  10. Unity给力插件之MeshBaker

    这是一个用来合并网格.材质.贴图的插件. 其实网上也有一些比较详细的使用说明,但是真实操作起来时,总是有一些搞不清bug.而且,作为功能比较全的插件,在Unity版本更新时,也难免会一些不兼容的地方. ...

随机推荐

  1. Python爬虫之百度API调用

    调用百度API获取经纬度信息. import requests import json address = input('请输入地点:') par = {'address': address, 'ke ...

  2. MD5加密学习

    MD5(Message Digest --消息摘要算法)算法是一种散列(hash)算法(摘要算法,指纹算法),不是一种加密算法(易错),任何长度的任意内容都可以用MD5计算出散列值.主要作用是[验明“ ...

  3. [会装]Spark standalone 模式的安装

    1. 简介 以standalone模式安装spark集群bin运行demo. 2.环境和介质准备 2.1 下载spark介质,根据现有hadoop的版本选择下载,我目前的环境中的hadoop版本是2. ...

  4. CF914F Substrings in a String

    Description 给你一个字符串ss,共有qq次操作,每个都是下面两种形式的一种. 11 ii cc 这个操作表示将字符串ss的第ii项变为字符cc 22 ll rr yy 这个操作表示输出字符 ...

  5. Python Flask SQLALchemy基础知识

    一.介绍 SQLAlchemy是一个基于Python实现的ORM框架.该框架建立在 DB API之上,使用关系对象映射进行数据库操作,简言之便是:将类和对象转换成SQL,然后使用数据API执行SQL并 ...

  6. NYOJ 10 skiing(好题)

    skiing 时间限制:3000 ms  |  内存限制:65535 KB 难度:5   描述 Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激.可是为了获得速度,滑的区域必须向下倾斜,而且当 ...

  7. jquery实现页面加载时删除特定class 的div内前三个字符

    jQuery(document).ready(function(){        jQuery("div.groupheader").each(function(){ $(thi ...

  8. 寻找与网页内容相关的图片(二)reddit的做法

    正如前文所述,内容聚合网站,比如新浪微博.推特.facebook等网站对于网页的缩略图是刚需.为了让分享的内容引人入胜,网页的图片缩略图是必不可少的.年轻人的聚集地.社交新闻网站reddit也是一个这 ...

  9. IllegalStateException: Unable to find a @SpringBootConfiguration

    此处需要改掉包名和类名

  10. Java篇:IO流

    流(IO) 四个基本流: InputStream(输入字节流).OutputStream(输出字节流).writer(输出字符流).reader(输入字符流)-四个基本流都是抽象类不能实例化,固只能用 ...