基本:
//老版本写法:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using HedgehogTeam.EasyTouch;
public class ET4Test : MonoBehaviour
{
//在其中订阅EasyTouch中的事件
private void OnEnable()
{
EasyTouch.On_TouchStart += OnTouchStart;//当手指点击开始的时候
EasyTouch.On_TouchUp += OnTouchEnd;//当手指松开的时候
EasyTouch.On_Swipe += OnSwipe;//手指的阶段
}
//在OnDisable与OnDestroy中取消订阅OnEnable中的事件
private void OnDisable()
{
EasyTouch.On_TouchStart -= OnTouchStart;
EasyTouch.On_TouchUp -= OnTouchEnd;
EasyTouch.On_Swipe -= OnSwipe;
}
private void OnDestroy()
{
}
void OnTouchStart(Gesture gesture)
{
Debug.Log("OnTouchStart");
Debug.Log("StartPosition" + gesture.startPosition);
}
void OnTouchEnd(Gesture gesture)
{
Debug.Log("OnTouchEnd");
Debug.Log("ActionTime" + gesture.actionTime);
}
void OnSwipe(Gesture gesture)
{
Debug.Log("OnSwipe");
Debug.Log("Type" + gesture.swipe);
}
}
//新版本写法
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using HedgehogTeam.EasyTouch;
public class ET5Test : MonoBehaviour
{
void Update()
{
//通过EasyTouch.current来获得当前玩家的输入的手势
Gesture currentGesture = EasyTouch.current;
//将当前玩家输入的手势类型与系统的手势类型对比,一样则执行游戏逻辑
//注意:当玩家没有任何输入(触摸屏幕)的时候,EasyTouch.current会返回NULL
if(currentGesture != null && EasyTouch.EvtType.On_TouchStart == currentGesture.type)
{
OnTouchStart(currentGesture);
}
if (currentGesture != null && EasyTouch.EvtType.On_TouchUp == currentGesture.type)
{
OnTouchEnd(currentGesture);
}
if (currentGesture != null && EasyTouch.EvtType.On_Swipe == currentGesture.type)
{
OnSwipe(currentGesture);
}
}
void OnTouchStart(Gesture gesture)
{
Debug.Log("OnTouchStart");
Debug.Log("StartPosition" + gesture.startPosition);
}
void OnTouchEnd(Gesture gesture)
{
Debug.Log("OnTouchEnd");
Debug.Log("ActionTime" + gesture.actionTime);
}
void OnSwipe(Gesture gesture)
{
Debug.Log("OnSwipe");
Debug.Log("Type" + gesture.swipe);
}
}
Quick Gesture:
这个组件封装的是快速拖动功能
Quick name为了在脚本中方便调用而设置
Allow on the axes选择在哪个轴上拖动
Allow pick over UI element是否允许忽略掉UI响应
Stop drag on collision enter遇到碰撞体是否停下
Reset physic on drag 拖拽时是否忽略掉刚体
下面是几个事件
封装的是进入和离开功能
Allow multi-touches是否允许多指
模拟多指可以按住Ctrl选择中心,然后Alt会出现一个与鼠标关于中心对称的模拟手指
封装的是长按功能
2 fingers gesture是否允许二指
Action triggering选择事件,以便下面注册方法
封装的是二指缩放功能
Gesture over me是否允许当手指不在其上的时候缩放
Pinch direction选择手指移动的放向
Enable simple action物体是否发生小动作
这里选的是大小,在XYZ轴上都发生变化,敏感度为1,轴不反转
封装的是翻转的功能
Swipe direction选择手指可以移动的方向
封装的是点击功能
Action triggering可以选择单击和双击
封装的是触摸的功能
封装的是二指旋转的功能
方便为事件订阅方法的组件
第一行分别是Enable是否启用、名字、取消该事件
Testing on选择检测的物体(即什么类型的物体触发了该事件)
Other receiver是否从其它物体上订阅方法(默认是从自身订阅,且无论是自身还是其它物体,上面都要挂脚本)
Receiver选择的其它物体
Method name订阅的方法
Parameter to send选择要传的参数(不能自定义)