Unity3D 实现手机滑屏的效果

langya413 2016-04-27 06:09:28
用Unity3D 做个类似手机左右滑屏的功能

我的想法的是,两个Canvas, 手指触摸移动第一个Canvas, localPosition 加上 移动距离,第二个Canvas 也移动同样的距离
不知道对不对, 有大神可以给个Demo吗

...全文
1656 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jwxkk 2016-09-12
  • 打赏
  • 举报
回复
 void OnGUI()
    {
        if (Event.current.type == EventType.MouseDown)
        {//记录鼠标按下的位置  
            first = Event.current.mousePosition;
        }
        if (Event.current.type == EventType.MouseDrag)
        {//记录鼠标拖动的位置  
            second = Event.current.mousePosition;
            if (second.x < first.x)
            {//拖动的位置的x坐标比按下的位置的x坐标小时,响应向左事件  
                print("left");
            }
            if (second.x > first.x)
            {//拖动的位置的x坐标比按下的位置的x坐标大时,响应向右事件  
                print("right");
            }

            float tempX = first.x-second.x;


            //控制地图不移出屏幕
            if (this.transform.position.x + tempX < 640)
            {
                return;
            }

            this.transform.Translate(new Vector3(tempX, 0, 0));


            first = second;
        }
    }  
以上代码,放到一个GO上,就能看到效果了,在pc 移动端都有有效
生活在他方 2016-08-22
  • 打赏
  • 举报
回复
直接用touch插件就好咯,easytouch或者leantouch
RemoveIt 2016-08-17
  • 打赏
  • 举报
回复
这种问题,写一下试试即可

2,585

社区成员

发帖
与我相关
我的任务
社区描述
Unity3D相关内容讨论专区
游戏unity 技术论坛(原bbs)
社区管理员
  • Unity3D
  • 芝麻粒儿
  • 「已注销」
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

Unity3D社区公告:

  1. 社区致力于解决各种Unity3D相关的“疑难杂症”。
  2. 社区不允许发布与Unity3D或相关技术无关内容。
  3. 社区版主邀请各位一道为打造优秀社区不懈努力。

试试用AI创作助手写篇文章吧