在说标准输入的方法时,需要先了解一下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---鼠标、键盘输入相关推荐

  1. Unity3D基础9:获取鼠标键盘输入

    前文:https://blog.csdn.net/Jaihk662/article/details/86751079(C#脚本) 一.获取键盘输入 相关API(其中KeyCode为键码,例如空格键就是 ...

  2. Java如何模拟鼠标键盘输入

    Java提供里Robot.KeyEvent(键盘).InputEvent(鼠标)类实现模拟键盘输入 private static void aut_mobs() {// 创建Robot对象Robot ...

  3. Java模拟鼠标键盘输入事件 --- Robot 类

    本文链接: http://blog.csdn.net/xietansheng/article/details/78453672 Java Swing 图形界面开发(目录) 官方JavaDocsApi: ...

  4. 【Unity3D】利用物体碰撞检测、键盘输入处理完成平衡球游戏

    物体碰撞检测是游戏编程里面非常常用的功能,一旦碰到就怎么怎么样,比如掉血等.Unity3D直接就提供了物体碰撞检测的接口,实现起来很方便.借此功能,完成了一个平衡球游戏,同时说明Unity3D的物体碰 ...

  5. python 键盘输入数字_python实现键盘输入的实操方法

    python实现键盘输入的实操方法 python中有指定的代码进行输入操作,所以今天就由小编来为大家介绍python怎么实现键盘输入. 第一首先打开电脑的python编辑工具. 再创建python项目 ...

  6. 【Unity3D】键盘鼠标控制视角的移动

    在3D游戏里面,视角是一个很重要的因素,部分玩家对锁视角嗤之以鼻,因此视角也是游戏制作里面需要努力的方面.其实也不难,换到Unity3D里面是想办法控制摄像机的移动.下面举一个简单的例子说明在Unit ...

  7. python模拟键盘输入视频_python教程-模拟鼠标和键盘输入

    大家可能知道,有的情形下,如果我们需进行自动化操作的应用程序不提供相对应的的接口,就难以通过Python直接调用API来做到自动化.在此类情形下,Python也并非压根没有办法,我们可以通过模拟键盘和 ...

  8. vc++6.0 模拟鼠标点击代码 木马程序的编写 VC 模拟键盘输入

    From: http://fengqing888.blog.163.com/blog/static/33011416201112124481/ MFC 工程 把以下代码放到你想要响应的函数里面就行 C ...

  9. 【Win32 API学习】模拟键盘输入和鼠标输入

    在Windows大行其道的今天,windows界面程序受到广大用户的欢迎.对这些程序的操作不外乎两种,键盘输入控制和鼠标输入控制.有时,对于繁杂的,或重复性的输入操作,我们能否通过编制程序来代替手工输 ...

  10. Python:监控键盘输入、鼠标操作,并将捕获到的信息记录到文件中

    Python:监控键盘输入.鼠标操作,并将捕获到的信息记录到文件中 - Socrates的专栏 - 博客频道 - CSDN.NET Python:监控键盘输入.鼠标操作,并将捕获到的信息记录到文件中 ...

最新文章

  1. 手把手教你如何进行FileZilla的安装
  2. Linux free指令查看内存使用情况
  3. 设计模式的理解:命令模式 (Command)
  4. JavaWeb-综合案例(用户信息)-学习笔记06【复杂条件查询功能】
  5. apicloud手机查看效果
  6. day32 管道, 数据共享, 进程池, 回调函数
  7. 第 0001 天:聊聊成长型思维模式者
  8. 统计数组中出现次数最多的元素并输出
  9. Invalid regular expression: unmatched parentheses
  10. 四窗口能分布到四台显示器上吗? 回答 Galactica 的提问
  11. 编译《视觉SLAM十四讲》ch5里joinmap出现 ***/anaconda3/lib/libpng16.so.16:‘inflateValidate@ZLIB_1.2.9’未定义的引用
  12. windows10系统自带linux子系统(WSL)的安装目录
  13. 音视频笔记-视锥细胞和视杆细胞的区别
  14. PTA 公路村村通
  15. Arduino Uno R3 communication
  16. LPDDR4 新技术改进特性介绍
  17. java不属于整数常量_病人52岁,诊断为高血压急症,呋塞米20毫克静推,执行后病人出现乏力、腹胀、肠鸣音减弱的症状,该病人可能发生了_学小易找答案...
  18. 联想小新pro16 | CSGO掉帧问题解决
  19. matlab 声明变量范围,matlab中syms如何定义变量范围
  20. 团队项目:AbsoluteDefense

热门文章

  1. Vagrant+PHPStorm+Google+XDebug断点调试
  2. mysql之 mysql 5.6不停机主从搭建(一主一从基于日志点复制)
  3. OC之集合的创建及应用
  4. (可行方案)mysql5.7.9安装教程
  5. 用java读取word2003和word2007的内容
  6. Win-MASM64汇编语言-and/or指令
  7. Java-虚拟机-垃圾收集器/垃圾收集算法/GCROOT根
  8. C++自学14:关系运算符(bool/std::boolalpha)
  9. Spring-AnnotationConfigApplicationContext/ClassPathXmlApplicationContext
  10. 1.11_shell_sort_希尔排序