当将Unity游戏运行到ios或android设备上时,桌面系统中的鼠标左键操作可以自动变为手机屏幕上的触屏操作,但鼠标操作无法实现一些特有的触屏操作,比如多点触屏。 

 

 

触控对于Android移动设备来说是一种必不可少的交互方式,今天我们就来初步了解一下Unity3D中有关触控的API,下一篇中给大家演示如何使用Unity3D制作一个触控小Demo。
    Touch 是一个结构体,每当发生一次触摸,系统就生成一个Touch类型的变量,存储和本次触摸的相关信息。如果发生多点触控,那么系统会生成多个Touch类型变量。
    Touch有如下主要成员变量:

position

触摸位置的坐标

Vector2类型

 

deltaPosition

触摸的位置变化量

Vector2类型

当手指接触屏幕,向某一方向划动时起始位置到终止位置的变化量

deltaTime

触摸的时间变化量

float类型

 

phase

触摸所处阶段

TouchPhase类型

关于TouchPhase会在下边加心介绍

    Input.touchCount 静态整形变量,当手一个手指触在屏幕上时,返回1,两个手指触在屏幕上时,返回2,依次类推。
   Input.GetTouch ( index : int )

如果有两个点呢?先来的就是Input.GetTouch(0),而后来的就是Input.GetTouch(1),依次类推。
    Input.touches 返回一个Touch类型数组,保存当前所有触摸点生成的Touch类型变量。
    TouchPhase

 

Began

手指开始接触屏幕

Moved

手指接触屏幕并在屏幕上划动

Stationary

手指接触屏幕并保持不动

End

手指离开屏幕

Cancel

取消对本次触摸的跟踪