unity3D---鼠标、键盘输入
在说标准输入的方法时,需要先了解一下Input类的功能。
鼠标输入
Input类主要的功能就是获取系统输入按键,因此获取鼠标输入的方法在Input类中。
主要的方法
- 当鼠标按下时,返回true,如果鼠标一直按下,在按下期间一直返回true
bool res = Input.GetMouseButton(参数); - 当鼠标按下时,第一帧返回true
bool res = Input.GetMouseButtonDown(参数); - 当鼠标释放后,第一帧返回true
bool res = Innput.GetMouseButtonUp(参数);
第一个方法:按下不松,每帧都会返回true;第二个方法:按下不松,只返回第一帧的true;第三个方法:按下不松,不返回,当松开以后才返回true
参数分类:0表示左键,1表示右键,2表示中键
测试:
我们创建一个脚本,将其添加给摄像机
public class cameraScript : MonoBehaviour {public bool flag;void Update () {flag = Input.GetMouseButton(0);}
}
我们可以看到在摄像机中有一个Flag变量,我们运行起来,可以通过该变量进行观察,在运行起来,需要鼠标点击Game面板。
当我们鼠标按下后,我们可以看到Flag已经发生变化
键盘输入
具体方法
- 通过名称指定的按键被用户按下时返回true
bool res = Input.GetKey(KeyCode.指定按键) - 当用户按下指定名称的按键时第一帧返回true
bool res = Input.GetKeyDown(Keycode.指定按键) - 当用户抬起指定名称按键的时候返回true
bool res = Input.GetKeyUp(KeyCode.指定按键)
将上面的代码改成如下:
public class cameraScript : MonoBehaviour {public bool flag;public bool flag2;void Update () {flag = Input.GetMouseButton(0);flag2 = Input.GetKey(KeyCode.A);}
}
如何按下组合键
我们在好多场景下,都会按下多个组合键。
我们可以通过多个判断进行实现。
实现一个镜头拉近效果
private Camera camera;
private void Start()
{camera = GetComponent<Camera>();
}
public bool Flag = true;
private void Update()
{if (Input.GetMouseButtonDown(1)){Flag = !Flag;if (Flag)camera.fieldOfView = 60;elsecamera.fieldOfView = 20;}
}
方法二:使用mathf.Lerp函数
private Camera camera;
private void Start()
{camera = GetComponent<Camera>();
}
public bool Flag = true;
private void Update()
{if (Input.GetMouseButtonDown(1)){Flag = !Flag;}if(Flag){camera.fieldOfView = Mathf.Lerp(camera.fieldOfView, 60, 0.1f);}else{camera.fieldOfView = Mathf.Lerp(camera.fieldOfView, 20, 0.1f);}
}
unity3D---鼠标、键盘输入相关推荐
- Unity3D基础9:获取鼠标键盘输入
前文:https://blog.csdn.net/Jaihk662/article/details/86751079(C#脚本) 一.获取键盘输入 相关API(其中KeyCode为键码,例如空格键就是 ...
- Java如何模拟鼠标键盘输入
Java提供里Robot.KeyEvent(键盘).InputEvent(鼠标)类实现模拟键盘输入 private static void aut_mobs() {// 创建Robot对象Robot ...
- Java模拟鼠标键盘输入事件 --- Robot 类
本文链接: http://blog.csdn.net/xietansheng/article/details/78453672 Java Swing 图形界面开发(目录) 官方JavaDocsApi: ...
- 【Unity3D】利用物体碰撞检测、键盘输入处理完成平衡球游戏
物体碰撞检测是游戏编程里面非常常用的功能,一旦碰到就怎么怎么样,比如掉血等.Unity3D直接就提供了物体碰撞检测的接口,实现起来很方便.借此功能,完成了一个平衡球游戏,同时说明Unity3D的物体碰 ...
- python 键盘输入数字_python实现键盘输入的实操方法
python实现键盘输入的实操方法 python中有指定的代码进行输入操作,所以今天就由小编来为大家介绍python怎么实现键盘输入. 第一首先打开电脑的python编辑工具. 再创建python项目 ...
- 【Unity3D】键盘鼠标控制视角的移动
在3D游戏里面,视角是一个很重要的因素,部分玩家对锁视角嗤之以鼻,因此视角也是游戏制作里面需要努力的方面.其实也不难,换到Unity3D里面是想办法控制摄像机的移动.下面举一个简单的例子说明在Unit ...
- python模拟键盘输入视频_python教程-模拟鼠标和键盘输入
大家可能知道,有的情形下,如果我们需进行自动化操作的应用程序不提供相对应的的接口,就难以通过Python直接调用API来做到自动化.在此类情形下,Python也并非压根没有办法,我们可以通过模拟键盘和 ...
- vc++6.0 模拟鼠标点击代码 木马程序的编写 VC 模拟键盘输入
From: http://fengqing888.blog.163.com/blog/static/33011416201112124481/ MFC 工程 把以下代码放到你想要响应的函数里面就行 C ...
- 【Win32 API学习】模拟键盘输入和鼠标输入
在Windows大行其道的今天,windows界面程序受到广大用户的欢迎.对这些程序的操作不外乎两种,键盘输入控制和鼠标输入控制.有时,对于繁杂的,或重复性的输入操作,我们能否通过编制程序来代替手工输 ...
- Python:监控键盘输入、鼠标操作,并将捕获到的信息记录到文件中
Python:监控键盘输入.鼠标操作,并将捕获到的信息记录到文件中 - Socrates的专栏 - 博客频道 - CSDN.NET Python:监控键盘输入.鼠标操作,并将捕获到的信息记录到文件中 ...
最新文章
- 手把手教你如何进行FileZilla的安装
- Linux free指令查看内存使用情况
- 设计模式的理解:命令模式 (Command)
- JavaWeb-综合案例(用户信息)-学习笔记06【复杂条件查询功能】
- apicloud手机查看效果
- day32 管道, 数据共享, 进程池, 回调函数
- 第 0001 天:聊聊成长型思维模式者
- 统计数组中出现次数最多的元素并输出
- Invalid regular expression: unmatched parentheses
- 四窗口能分布到四台显示器上吗? 回答 Galactica 的提问
- 编译《视觉SLAM十四讲》ch5里joinmap出现 ***/anaconda3/lib/libpng16.so.16:‘inflateValidate@ZLIB_1.2.9’未定义的引用
- windows10系统自带linux子系统(WSL)的安装目录
- 音视频笔记-视锥细胞和视杆细胞的区别
- PTA 公路村村通
- Arduino Uno R3 communication
- LPDDR4 新技术改进特性介绍
- java不属于整数常量_病人52岁,诊断为高血压急症,呋塞米20毫克静推,执行后病人出现乏力、腹胀、肠鸣音减弱的症状,该病人可能发生了_学小易找答案...
- 联想小新pro16 | CSGO掉帧问题解决
- matlab 声明变量范围,matlab中syms如何定义变量范围
- 团队项目:AbsoluteDefense
热门文章
- Vagrant+PHPStorm+Google+XDebug断点调试
- mysql之 mysql 5.6不停机主从搭建(一主一从基于日志点复制)
- OC之集合的创建及应用
- (可行方案)mysql5.7.9安装教程
- 用java读取word2003和word2007的内容
- Win-MASM64汇编语言-and/or指令
- Java-虚拟机-垃圾收集器/垃圾收集算法/GCROOT根
- C++自学14:关系运算符(bool/std::boolalpha)
- Spring-AnnotationConfigApplicationContext/ClassPathXmlApplicationContext
- 1.11_shell_sort_希尔排序