美文网首页
无标题文章

无标题文章

作者: 乱飞的心 | 来源:发表于2017-10-08 00:27 被阅读0次

Unity3dTouch触摸属性的使用方法

iOSAndroid设备能够支持多点触控。在unity中你可以通过Input.touches属性集合访问在最近一帧中触摸在屏幕上的每一根手指的状态数据。简单的触控响应实现起很简单,不过一些复杂的触控响应或触控手势什么的,还是使用一些第三方的插件吧,当然你也可以自己封装。不管什么情况,了解决unity原生api还是非常必要的。

Input类中对触摸操作的方法和变量

方法和变量

说明

GetTouch

返回指定的触摸数据对象

Touches

当前所有触摸状态列表

touchCourt

当前所有触摸状态列表长度

multiTouchEnable

系统是否支持多点触摸

simulateMouseWithTouches

屏幕触控模拟鼠标的点击

touchSupported

返回应用程序正在运行的设备是否支持触摸输入

注意Input.touches返回的是Touch[],每个记录代表一个手指在屏幕上的触碰状态

Input.GetTouch (intindex )方法返回值是Touch,一个存放触摸信息的对象不允许分配临时变量。

通过GetTouch或者touches可以访问移动设备的触摸数据,数据保存在Touch的结构体中,结构体Touch的变量

变量

说明

Fingered

触摸数据的唯一索引id

Position

触摸的位置

deltaPosition

触摸位置的改变量

deltaTime

距离上次触摸数据变化的时间间隔

tapCount

单击次数

Phase

触摸的状态的描述

通过调用phase可以访问当前的触摸状态,

变量

说明

Began

手指刚触摸屏幕

Moved

手指在屏幕上移动

Stationary

手指触碰屏幕并从上一帧起没有移动

Ended

手指离开屏幕

Canceled

系统取消了跟踪触摸

TouchPhase枚举:它列表描述了手指触摸的几种状态。对应Touch类中的phase属性。这是状态分别是:Began、Move、Stationary、Ended、Canceled。

相关的api

1、Toch类:用来记录一个手指触摸在屏幕上的状态与位置的各种相关数据。这其它中只有两个属性是你要注意的,就是Touch.fingerId和Touch.tapCount。

Touch.fingerId:一个Touch的标识。Input.touches数组中的同一个索引在两帧之前,指向的可不一定是同一个Touch。用来标识某个具体的touch一定要用fingerId,在分析手势时、或处理多点触控时,fingerId是非常重要的。

Touch.tapCount:点击的总人数,这个属性可以用来模拟“双击”的效果。

2、TouchPhase枚举:它列表描述了手指触摸的几种状态。对应Touch类中的phase属性。这是状态分别是:Began、Move、Stationary、Ended、Canceled。

3、Input.touches:一个Touch数组,代表着当前帧,所有手指在屏幕上的触碰状态与相关数据。(只读

4、Input.touchCount:触摸数量,相当于Input.touches.Length。(只读)

5、Input.multiTouchEnabled:设置与指示当前系统(注意不是指设备哦!)是否启用多点触控。不过这个属性有点怪,我在电脑上测试给它赋false不会报错但完全是没有用的,它的值一值是true.不过在我的安卓手机上测试是正常的!Ture表示支持多点触控(一般是5点);False表示单点触控。

6、Input.GetTouch(int index):安索引值获取一个Touch对象。

官方例子根据手指在屏幕上移动来移动物体

usingUnityEngine;

usingSystem.Collections;

public class ExampleClass :MonoBehaviour

{

public float speed = 0.1F;

void Update()

{

if (Input.touchCount> 0 &&Input.GetTouch(0).phase ==TouchPhase.Moved)

{

// Get movement of the finger since lastframe

Vector2touchDeltaPosition =Input.GetTouch(0).deltaPosition;

// Move object across XY plane

transform.Translate(-touchDeltaPosition.x * speed,-touchDeltaPosition.y * speed, 0);

}

}

}

相关文章

  • 无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标

    无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章 无标题文章无标题文章无标题文章无...

  • 无标题文章

    无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章

  • 无标题文章

    无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标...

  • 无标题文章

    无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标...

  • fasfsdfdf

    无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标...

  • 无标题文章

    无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标...

  • 无标题文章

    无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标...

  • 无标题文章

    无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标...

  • 无标题文章

    无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章无标题文章

  • 无标题文章

    无标题文章 无标题文章 无标题文章无标题文章 无标题文章 无标题文章

网友评论

      本文标题:无标题文章

      本文链接:https://www.haomeiwen.com/subject/ciahyxtx.html