Unity Android设备的输入

1依据屏幕位置输入

有的时候也许是为了整个有些风格的干净,减少屏幕上的UI图标,以至于摒弃了虚拟按键这种常用的输入方式。为了替代虚拟按键的输入方式而选择了依据点击事件发生在屏幕中的位置而控制对象的移动等。比如将整个手机屏幕划分为左右两个区域,左边区域负责移动控制,右边区域负责技能释放。

这里我们需要处理的问题分别是点击事件的获取及屏幕信息的获取,下面这两个方面的API文档。

点击事件:http://wiki.ceeger.com/script/unityengine/classes/touch/touch

屏幕信息:http://wiki.ceeger.com/script/unityengine/classes/screen/screen

 void Update () {

         if (Input.touchCount > )//判断是否有触摸信息
{
for (int i = ; i < Input.touchCount; i++)
{
Touch touch = Input.touches[i];//将触摸信息传递给touch if (touch.phase == TouchPhase.Stationary || touch.phase == TouchPhase.Moved)//touch.phase是触摸的相位信息,通过TouchPhase枚举中来确定当前的状态,Began:一个手指开始接触;Moved:一个手指发生了移动;Stationary:一个手指接触了屏幕但是没有发生移动;Ended:一个手指离开屏幕,也是最后的状态;Cnaceled:系统取消对触摸监听,如用户把屏幕放到他脸上或超过五个接触同时发生。
{
touchPosition = touch.position;//获取触摸的位置信息,该坐标与屏幕坐标一致。
if (touchPosition.x < screenWidth/)//screenWidth在Start中已经赋值=>screenWidth = Screen.width;
{
SomeMethod1();//某方法1
beeTransform.Translate(new Vector3(-MoveSpeed, -DownSpeed, ),Space.World); //beeTransform是游戏对象的位置信息,已在Start中赋值
}
else if (touchPosition.x>=screenWidth/&& touchPosition.x <screenWidth / )
{
SomeMethod1();
beeTransform.Translate(new Vector3(MoveSpeed, -DownSpeed, ), Space.World); }
}
else if (touch.phase == TouchPhase.Ended)
SomeMethod2();//某方法
}
} if (Input.touchCount == )//未触摸时
SomeMethod2();
}

Unity Android设备的输入的更多相关文章

  1. Android设备连接Unity Profiler性能分析器

    Unity提供两种方式让Developer的Android设备连接Profiler进行性能分析: 1.通过wifi,Android设备和计算机处于同一个Wlan中. 2.通过USB ADB 普通情况我 ...

  2. 可显示Android设备选择列表,并进入指定Android设备Console的Shell脚本

    如果PC上连接多部Android设备(包括Android模拟器),在进入Console时还需要使用adb -s deviceid shell.比较麻烦,本文为此编写了一个Shell脚本文件(需要在Li ...

  3. 在ios android设备上使用 Protobuf (使用dll方式)

    http://game.ceeger.com/forum/read.php?tid=13479 如果你的工程可以以.Net 2.0 subset模式运行,请看这个帖子中的方法. 地址:http://g ...

  4. 在android设备上调试ionic应用

    方法1: ionic run android -l -c 将会在console中输出日志信息 方法2: (1).使用usb连接android设备,并打开android设备的调试功能 (2).在chro ...

  5. 在桌面chrome中调试android设备中的web页面

    准备工作 1, 桌面版chrome 2, Android设备(安装有chrome浏览器) 3, Android-sdk Android-sdk安装及设置 SKD安装 从http://developer ...

  6. ubuntu 使用adb shell命令识别android设备

    ubuntu 使用adb shell命令配置 在ubuntu下使用adb 命令识别Android设备需配置adb_usb.ini 文件 文件路径:  ~/.android/ ,若不存在创建该文件. a ...

  7. 【转】ubuntu连接android设备(附最简单方法)

    原文网址:http://blog.csdn.net/maosidiaoxian/article/details/22661725 在ubuntu下连接android设备,虽然不用像windows那样安 ...

  8. mac os使用lsusb命令和连接未知的Android设备

    今天在mac上连接一个android设备发现连不上,adb devices看不到设备.于是想用lsusb命令看下,结果发现Mac居然没有这个命令,于是网上搜了下.发现了以下的命令system_prof ...

  9. Microsoft Azure IoTHub Serials 1 - 使用Android设备与Azure IoTHub进行交互

    Azure IoTHub的目标是为物联网的应用场景提供方便的设备接入,完成消息的发送和接收(C2D和D2C).经过持续不断的努力,目前Azure IoTHub已经支持多种操作系统设备的接入,包括And ...

随机推荐

  1. 在Mac上安装office2016破解版

    2018.01.09更新 2017.03.13 更新 2017.02.21 更新 2017.01.16 更新 前言 在Mac上怎么能没有制作文档/表格/ppt的工具呢?在windows上有office ...

  2. [LCOI2018][WX] Tirpitz

    \([LCOI2018][WX11.1]~Tirpitz​\) 时限:1s 内存限制:131072KB 输入文件: T.in 输出文件: T.out 题目背景 王九日很颓废,这也就是他为什么这么弱的原 ...

  3. 【题解】洛谷P1879 [USACO06NOV] Corn Fields(状压DP)

    洛谷P1879:https://www.luogu.org/problemnew/show/P1879 思路 把题目翻译成人话 在n*m的棋盘 每个格子不是0就是1 1表示可以种 0表示不能种 相邻的 ...

  4. HDU 1019 (多个数的最小公倍数)

    传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1019 Least Common Multiple Time Limit: 2000/1000 MS (J ...

  5. [node.js学习]为node.js写的一个操作mysql的类

    不支持一个对象在不同异步中使用,模仿的php框架 speedphp中的model模块 GaryMysql.js var mysql = require('mysql'); var pool = nul ...

  6. peripheralStateNotificationCB

    /********************************************************************* * @fn peripheralStateNotifica ...

  7. RBG颜色对照表:有网址

    RBG颜色对照表 大家都懂的RBG颜色对照表,想做一个有个性和美观的网页,风格是必须要有的,那么多姿多彩的颜色必然是装饰网页的一簇鲜花,为了方便查找比对颜色,就做了这个 网址为: http://too ...

  8. java中强引用、软引用、弱引用、幻象引用有什么区别?分别使用在什么场景?

    不同的引用类型,主要体现在对象的不同可达性(reachable)状态和对垃圾收集的影响. 1.强引用是我们最常见的普通对象引用,只要还有强引用指向一个对象,就表明对象还"活着",垃 ...

  9. [MYSQL][1]创建,修改,删除表

    查看有哪些数据库: SHOW DATABASES; 创建,删除数据库: CREATE DATAABASE mydb; DROP DATABASE mydb; 查看有哪些表: SHOW TABLES; ...

  10. Ubuntu下Zabbix结合percona监控mysql数据

    按道理来说zabbix就自带的MySQL插件来监控mysql数据库,但是你会发现,自带的mysql监控项是很少的,根本满足不了公司的需求.由于它本身自带的模板太过简单了,所以需要做更详细的监控,而pe ...