【Unity】7.5 移动设备输入
分类:Unity、C#、VS2015
创建日期:2016-04-21
一、简介
在iOS和Android系统中,操作都是通过触摸来完成的。Input类中对触摸操作的方法或变量如下图所示:
通过GetTouch或者touches可以访问移动没备的触摸数据,数据保存在Touch的结构体中。下图是Touch的结构体变量:
二、基本用法示例
1、示例1(遍历所有Touch并输出Touch的信息)
void OnGUI()
{
//遍历所有Touch
foreach(Touch touch in Input.touches)
{
//输出Touch信息
GUILayout.Label(string.Format("手指:{0} 状态:{1} 位置:{2}",touch.fingerId,touch.phase.ToString(),touch.position));
}
}
2、示例2(Demo5_2_MobileExample.unity)
该例子演示如何打印当前触摸屏幕的手指数量。
下面是MobileExample.cs文件中的代码:
using UnityEngine;
using System.Collections;
public class MobileExample : MonoBehaviour
{
//定义手指在触摸屏上的数量
public int fingerCount = 0; void Update()
{
foreach (var touch in Input.touches)
{
if (touch.phase != TouchPhase.Ended && touch.phase != TouchPhase.Canceled)
fingerCount++;
}
if (fingerCount > 0)
print("用户有 " + fingerCount + " 手指触摸了屏幕"); } void OnGUI()
{
//输出手指在触摸屏上的数量至界面中
GUILayout.Label("手指数量:" + fingerCount);
}
}
运行预览效果:
3、示例3(Demo5_3_MobileMoveExample.unity)
该例子演示如何根据手指在屏幕上的滑动来移动物体。
MobileMoveExample.cs文件的代码如下:
using UnityEngine;
using System.Collections; public class MobileMoveExample : MonoBehaviour
{
public float speed = 0.1f;
void Update()
{
if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Moved)
{
// 得到手指在这一帧的移动距离
Vector2 touchDeltaPosition = Input.GetTouch(0).deltaPosition;
// 在XY平面上移动物体
transform.Translate(-touchDeltaPosition.x * speed, -touchDeltaPosition.y * speed, 0);
}
}
}
运行预览效果和示例2的截图相同。
【Unity】7.5 移动设备输入的更多相关文章
- 在Unity中用UGUI制作可输入下拉框
Unity中UGUI制作可输入下拉框 目录 Unity中UGUI制作可输入下拉框 前言 组件分析 制作流程 总结 前言 在搜索引擎以及一些网页中我们常常可以看见这样一种UI控件,看上去是一个输入框,在 ...
- 【Unity】7.6 自定义输入
分类:Unity.C#.VS2015 创建日期:2016-04-21 一.简介 在Unity中可以创建自定义的虚拟按键,然后将设备的输入映射到自定义的按键上.使用虚拟按键的好处是可以让游戏玩家自己定义 ...
- 【Unity】第7章 输入控制
分类:Unity.C#.VS2015 创建日期:2016-04-21 一.简介 Unity提供了-个非常易用和强大的用于处理输入信息的类:Input,利用该类可以处理鼠标.键盘.摇杆/方向盘/手柄等游 ...
- HoloLens开发手记 - Unity之Keyboard input 键盘输入
虽然HoloLens支持很多种输入方式,包括蓝牙键盘在内.但是大部分应用还是不能断定用户有物理键盘可以输入,所以虚拟键盘输入还是必须要提供的. Unity提供了一个TouchScreenKeyboar ...
- 【Unity】7.3 键盘输入
分类:Unity.C#.VS2015 创建日期:2016-04-21 一.简介 键盘事件也是桌面系统中的基本输入事件.和键盘有关的输入事件有按键按下.按键释放.按键长按,Input类中可以通过下图所示 ...
- 【Unity】7.2 鼠标输入
分类:Unity.C#.VS2015 创建日期:2016-04-21 一.简介 在桌面系统的游戏中,鼠标输入是最基本的输入方式之一.游戏很多操作都需要鼠标来完成,例如武器的瞄准和开火.菜单的单击.物体 ...
- 怎样将游戏从Unity导到iOS设备上
当我开始开发自己的iOS游戏时,我会考虑的第一件事便是如何将其导出到设备中,如此有效地测试我的游戏.最初,该过程看似很长且复杂,我所遇到的主要问题是,尽管存在许多资源,但是它们并非完全来自同样的地方, ...
- unity探索者之获取设备当前电量
很多入坑了的小伙伴应该都知道,很多时候做移动端项目都会有显示当前电池电量的需求 对于这个功能,在unity中要做的事并不多,核心方法就一个,自己做一个定时器或者直接使用协程间隔调用该方法就好了 pub ...
- 移动设备输入Touch类及相关API
Touch:[结构体]存储移动端手指触摸屏幕的信息.根据触摸信息,可以在移动端实现各种功能. Input.multiTouchEnabled:是否开启触控.true:表示多点触控:false:表示单点 ...
随机推荐
- 〖Linux〗干掉Kubuntu烦人的软件升级提示“Update notification daemon”,Your should update ..
Kubuntu是很好使用,但是升级提示也是太烦人了,开机的时候总是显示如下画面: 使用System Load Indicator(sudo apt-get install indicator-mult ...
- android手机导入.cer证书文件的方法
访问很多https协议的网站需要安装证书,手机也可以导入cer文件,你知道么?本文将通过简单的两步告诉你手机安装cer文件的方法. 步骤一:请先将数字证书文件“******.cer”文件复制到SD卡的 ...
- 转:Linux网卡驱动程序编写
Linux网卡驱动程序编写 [摘自 LinuxAID] 工作需要写了我们公司一块网卡的Linux驱动程序.经历一个从无到有的过程,深感技术交流的重要.Linux作为挑战微软垄断的强有力武器,日益受到大 ...
- Wget用法、参数解释
wget功能的强大就不用多说了,在高手手里,它就像是个无往不利的杀人利器,下面是转载的一篇Wget用法.参数解释的比较好的一个文章,当然最好的老师还是man wget 是一个从网络上自动下载文件的自由 ...
- 【CI】CN.一种多尺度协同变异的微粒群优化算法
[论文标题]一种多尺度协同变异的微粒群优化算法 (2010) [论文作者]陶新民,刘福荣, 刘 玉 , 童智靖 [论文链接]Paper(14-pages // Single column) [摘要] ...
- HDU 1023 Train Problem II (大数卡特兰数)
Train Problem II Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- Java 图片矢量压缩
直接贴出工具类源码 package com.snow.web.util.publics; import java.awt.Image; import java.awt.image.BufferedIm ...
- ActiveX IE保护模式下的低权限操作路径及Windows操作系统特殊路径
参考理解IE保护模式:https://blog.csdn.net/xt_xiaotian/article/details/5336809 文件帮助类: public class FileHelp { ...
- 面试求职中你需要了解的Java面向对象
从毕业到现在,笔试过好多场 也面了好多场, 一直想写一些东西给找工作的朋友,这篇文章结合个人经历讲解面试中的面向对象.里边有些实例个人以面试题的形式写出来,从程序角度去b帮助大家了解学习,最后希望大家 ...
- 【Algorithm】希尔排序
一. 算法描述 希尔排序:将无序数组分割为若干个子序列,子序列不是逐段分割的,而是相隔特定的增量的子序列,对各个子序列进行插入排序:然后再选择一个更小的增量,再将数组分割为多个子序列进行排序..... ...