2048游戏 unity3d 中的手势检测

    private TouchDir GetTouchDir() {
//        if (Input.GetMouseButtonUp(0)) {  //mouse control 鼠标的检测
		if(Input.touchCount==1 && Input.GetTouch(0).phase ==TouchPhase.Ended){
            Vector2 touchOffset =  Input.GetTouch(0).position - touchDownPosition;


            if (Mathf.Abs(touchOffset.x) > Mathf.Abs(touchOffset.y) && Mathf.Abs(touchOffset.x) > 50) {
                if (touchOffset.x > 0) {
                    return TouchDir.Right;
                }
            }
            if (Mathf.Abs(touchOffset.x) > Mathf.Abs(touchOffset.y) && Mathf.Abs(touchOffset.x) > 50) {
                if (touchOffset.x < 0) {
                    return TouchDir.Left;
                }
            }
            if (Mathf.Abs(touchOffset.x) < Mathf.Abs(touchOffset.y) && Mathf.Abs(touchOffset.y) > 50) {
                if (touchOffset.y < 0) {
                    return TouchDir.Bottom;
                }
            }
            if (Mathf.Abs(touchOffset.x) < Mathf.Abs(touchOffset.y) && Mathf.Abs(touchOffset.y) > 50) {
                if (touchOffset.y > 0) {
                    return TouchDir.Top;
                }
            }

        }
        return TouchDir.None;
    }
Input.touchCount==1 指的是判断触电数量为单点触摸
Input.touchCount >1 指的是判断触点数量为多点触摸
 Input.GetTouch(0) 这其中0的意思是代表第一个触碰的手指,如果是1代表第二个触碰的手指,以此类推


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值