开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

项目源码

关注:1364

当前位置:游戏蛮牛 资源专区 项目源码

查看: 721|回复: 11

[Unity] 关于移动端和PC端的上下左右操作

[复制链接]  [移动端链接]
5熟悉之中
728/1000
排名
3968
昨日变化
22

7

主题

137

帖子

728

积分

Rank: 5Rank: 5

UID
252607
好友
1
蛮牛币
2042
威望
0
注册时间
2017-11-5
在线时间
264 小时
最后登录
2018-5-25
发表于 2018-2-9 12:56:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
本帖最后由 RyeCat 于 2018-2-9 13:00 编辑

   Unity在PC端测试的时候对于输入上下左右时一般情况我们可以用下面代码来实现用WASD或者方向键控制上下左右操作
     
QQ图片20180209125224.png
    但是在移动端,并没有这些按键,那么该怎么实现这些简单的操作呢?的确有插件可以很简单的实现这些功能,但是我还是自己简单的
    写了一段代码来实现


[C#] 纯文本查看 复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
public enum TouchDir
{
    Left, Right, Top, Bottom, None
}

public class NewBehaviourScript : MonoBehaviour
{

    private Vector3 pos;
        void Update () {
        if (GetTouchDir()== TouchDir.Left)
        {
            Debug.Log("左...");
        }
        if (GetTouchDir() == TouchDir.Right)
        {
            Debug.Log("右...");
        }
        if (GetTouchDir() == TouchDir.Top)
        {
            Debug.Log("上...");
        }
        if (GetTouchDir() == TouchDir.Bottom)
        {
            Debug.Log("下...");
        }
    }
    private TouchDir GetTouchDir()
    {
        if (Input.GetMouseButtonDown(0))
        {
            pos = Input.mousePosition;
        }
        if (Input.GetMouseButtonUp(0) && !EventSystem.current.IsPointerOverGameObject())//若抬起来时的点在UI(UGUI)上不触发
        {
            Vector3 touchOffset = Input.mousePosition - pos;
            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;
    }

}


本人新手学习中,不喜勿喷.....

回复

使用道具 举报

6蛮牛粉丝
1344/1500
排名
5035
昨日变化
8

6

主题

821

帖子

1344

积分

Rank: 6Rank: 6Rank: 6

UID
236677
好友
0
蛮牛币
2197
威望
0
注册时间
2017-8-9
在线时间
269 小时
最后登录
2018-3-30
发表于 2018-2-11 14:09:12 | 显示全部楼层
感谢分享

回复

使用道具 举报

7日久生情
1764/5000
排名
4294
昨日变化
2

0

主题

1268

帖子

1764

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
258739
好友
0
蛮牛币
3462
威望
0
注册时间
2017-12-9
在线时间
200 小时
最后登录
2018-5-23
发表于 2018-2-12 09:36:03 | 显示全部楼层
看起来很不错,感谢楼主分享!!!

回复 支持 反对

使用道具 举报

7日久生情
1922/5000
排名
3429
昨日变化
15

0

主题

1331

帖子

1922

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
185339
好友
0
蛮牛币
2730
威望
0
注册时间
2016-11-20
在线时间
213 小时
最后登录
2018-5-25
发表于 2018-2-13 09:19:01 | 显示全部楼层
谢谢分享

回复

使用道具 举报

2初来乍到
127/150
排名
12503
昨日变化
216

1

主题

25

帖子

127

积分

Rank: 2Rank: 2

UID
266829
好友
0
蛮牛币
116
威望
0
注册时间
2018-1-29
在线时间
39 小时
最后登录
2018-5-25
发表于 2018-2-13 14:19:54 | 显示全部楼层
很好,对于我们这种初学者很有用

回复 支持 反对

使用道具 举报

3偶尔光临
252/300
排名
8590
昨日变化
8

1

主题

62

帖子

252

积分

Rank: 3Rank: 3Rank: 3

UID
223503
好友
0
蛮牛币
272
威望
0
注册时间
2017-5-23
在线时间
69 小时
最后登录
2018-5-17
发表于 2018-2-14 21:59:05 | 显示全部楼层
感谢分享

回复

使用道具 举报

2初来乍到
120/150
排名
12936
昨日变化
6

1

主题

30

帖子

120

积分

Rank: 2Rank: 2

UID
241331
好友
0
蛮牛币
218
威望
0
注册时间
2017-9-4
在线时间
31 小时
最后登录
2018-4-18
发表于 2018-2-23 10:06:14 | 显示全部楼层
感谢分享

回复

使用道具 举报

3偶尔光临
241/300
排名
8062
昨日变化
81

0

主题

47

帖子

241

积分

Rank: 3Rank: 3Rank: 3

UID
266946
好友
0
蛮牛币
217
威望
0
注册时间
2018-1-30
在线时间
65 小时
最后登录
2018-5-25
发表于 2018-2-28 09:51:50 | 显示全部楼层
very优秀

回复

使用道具 举报

0

主题

40

帖子

82

积分

Rank: 2Rank: 2

UID
10783
好友
0
蛮牛币
16
威望
0
注册时间
2013-12-21
在线时间
41 小时
最后登录
2018-3-21
发表于 2018-3-14 15:12:17 | 显示全部楼层
资产支持支持支持支持
[发帖际遇]: txd1jsw 在论坛发帖时没有注意,被小偷偷去了 1 蛮牛币. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

4四处流浪
478/500
排名
8332
昨日变化
85

32

主题

127

帖子

478

积分

Rank: 4

UID
243169
好友
0
蛮牛币
224
威望
0
注册时间
2017-9-13
在线时间
193 小时
最后登录
2018-5-25
发表于 2018-3-21 10:15:25 | 显示全部楼层

感谢分享

回复

使用道具 举报

7日久生情
1540/5000
排名
1169
昨日变化
3

7

主题

197

帖子

1540

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
167044
好友
0
蛮牛币
2874
威望
0
注册时间
2016-9-6
在线时间
446 小时
最后登录
2018-5-25
发表于 2018-4-17 22:12:53 | 显示全部楼层
6666666666666

回复

使用道具 举报

排名
28589
昨日变化
13

0

主题

17

帖子

40

积分

Rank: 1

UID
133256
好友
0
蛮牛币
18
威望
0
注册时间
2016-1-1
在线时间
15 小时
最后登录
2018-5-21

一贫如洗

发表于 2018-5-18 14:07:47 | 显示全部楼层
谢谢分享

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

关闭

站长推荐 上一条 /1 下一条

快速回复 返回顶部 返回列表