当前位置:网站首页>[Unity Getting Started Plan] Basic Concepts (7) - Input Manager & Input Class
[Unity Getting Started Plan] Basic Concepts (7) - Input Manager & Input Class
2022-08-03 16:37:00 【flashinggg】
目录
1.3 Virtual Axis 虚拟轴(复数:Axels)
Ngative Button, Positive Button 负/正值键(按钮)
Input.GetKeyDown(string KeyName)
Input.GetKeyUp(string KeyName)
2.3 Access virtual axes Input.GetAxis(string AxisName)
在Input ManagerIn the window, you can view and define the project input axis and other related operations,Here is a brief introduction to what some of the controls it has mean.
1 Input Manager-Controls 控件
Input MnagerThe following three controls are mainly used
1.1 Key 键
Refers to any key on a physical keyboard,比如↑、W、Space空格等.
1.2 Button 按钮
Refers to the buttons on some physical controllers,Like on a gamepadX按钮.
1.3 Virtual Axis 虚拟轴(复数:Axels)
Maps to the buttons mentioned above/键,After the user activates the control,Virtual axes will get[-1,1]a value on the range.Unity中,Each project created contains several input shafts,在Input ManagerIn the window, you can view the properties that the input axis has.

Name 名称
轴的名称,可以在脚本中通过Nameaccess the axis.
Ngative Button, Positive Button 负/正值键(按钮)
Controls for pushing in the negative and positive directions, respectively,Can be a key on a keyboard,It could also be a button on the controller.Enter settings,对于键盘按键:(The default is on the keyboard, respectively“←”和“→”)
- Negative Buttion——负值键,Press to set the axis to-1
- Positive Button——正值键,Press to set the axis to1
对于游戏手柄:
The lever is on the left、中间、The right side sets the horizontal axis to -1、0和1.
The rest of the parameters will not be introduced too much here.
2 C#中的Input类
官方文档:UnityEngine.Input - Unity 脚本 API
如上,Unity中用InputThe class controls the user's input,包括键盘、鼠标、Some input methods such as gravity induction.以下介绍一些常用的InputAPI中的静态函数:
2.1 键盘的输入(获取键盘事件)
Input.GetKey(string KeyName)
当键名为KeyNamekey is held down(Long press is valid),返回true.Can be used for automatic fire etc.
if(Input.GetKey("up")){
print("up arrow key is held down");
}
Input.GetKeyDown(string KeyName)
when a key is pressed(按下有效)时,返回true.
Input.GetKeyUp(string KeyName)
When the user releases a key,返回ture
if (Input.GetKeyUp("space"))
{
print("Space key was released");
}2.2 鼠标的输入(获取鼠标事件)
Input.GetMouseButton(int button)
返回Whether the mouse is pressedbutton键,button值分别对应
- 0——鼠标左键
- 1——鼠标右键
- 2——鼠标中键
if (Input.GetMouseButton(0))
{
Debug.Log("Pressed left click.");
}
if (Input.GetMouseButton(1))
{
Debug.Log("Pressed right click.");
}
if (Input.GetMouseButton(2))
{
Debug.Log("Pressed middle click.");
}Input.GetMouseButtonDown(int button)
用户按下botton键的帧期间返回true
Input.GetMouseButtonUp(int button)
用户松开botton键的帧期间返回true
2.3 Access virtual axes Input.GetAxis(string AxisName)
public static float GetAxis (string axisName);
What it returns is a value,The meaning of this value depends on the type of control that the axis is mapped to.并且需要通过1.3properties described in NameThe axis name accesses the virtual axis.
For example, you want to query the value of the current horizontal axis and store it in a variable,就可以使用InputGetAxis(string AxisName)访问:
float horizontalInput = Input.GetAxis("Horizontal");The axis mapping is generally classified as touch screen(鼠标操作)、Keyboard operation class(键盘、控制杆).
鼠标操作
When the axes are mapped to the mouse,返回的float值不在[-1,1],此时的值为The current mouse increment*axis sensitivity.A positive value generally means that the mouse is to the right/向下移动,Negative values mean to the left/向上移动.
键盘操作
Joysticks for gamepads,-1Indicates pushing all the way to the left,1Indicates pushing all the way to the right,0表示在中间.
For physical keyboard operation,分为以下两种
- Vertical:Corresponds to the vertical of the keyboard,即上/下键,You can also customize key settings
- Horizontal:Corresponds to the level of the keyboard,即左/右键,You can also customize key settings
边栏推荐
- How to analyze the weekly activity rate?
- window.open不显示favicon.icon
- 兄弟组件通信context
- C专家编程 第3章 分析C语言的声明 3.3 优先级规则
- Kubernetes 笔记 / 入门 / 生产环境 / 容器运行时
- 13 and OOM simulation
- Windows 事件查看器记录到 MYSQL
- 使用.NET简单实现一个Redis的高性能克隆版(一)
- Not to be ignored!Features and advantages of outdoor LED display
- 世界顶级级架构师编写2580页DDD领域驱动设计笔记,属实有牌面
猜你喜欢

C专家编程 第1章 C:穿越时空的迷雾 1.10 “安静的改变”究竟有多少安静

spark入门学习-2

#夏日挑战赛#【FFH】OpenHarmony设备开发基础(四)启动流程

protobuf 反射使用总结

一文看懂推荐系统:召回01:基于物品的协同过滤(ItemCF),item-based Collaboration Filter的核心思想与推荐过程

使用uniapp 封装一个request 请求
![STM32 GPIO LED and buzzer implementation [Day 4]](/img/13/dbfed5a207e97ba0b78c1f63712e16.png)
STM32 GPIO LED and buzzer implementation [Day 4]

Auto Scaling 弹性伸缩(运维释放人力)

详谈RDMA技术原理和三种实现方式

Why do I strongly recommend using smart async?
随机推荐
生产环境如何删除表呢?只能在SQL脚本里执行 drop table 吗
Selective Search学习笔记
滑环安装注意事项
C专家编程 第3章 分析C语言的声明 3.5 typedef可以成为你的朋友
我在滴滴做开源
【翻译】关于扩容一个百万级别用户系统的六个课程
Spark entry learning-2
面试不再被吊打!这才是Redis分布式锁的七种方案的正确打开方式
WordPress 5.2.3 更新,升级出现请求超时的解决方法
高薪程序员&面试题精讲系列132之微服务之间如何进行通信?服务熔断是怎么回事?你熟悉Hystrix吗?
C语言03、数组
一文看懂推荐系统:召回01:基于物品的协同过滤(ItemCF),item-based Collaboration Filter的核心思想与推荐过程
《安富莱嵌入式周报》第276期:2022.07.25--2022.07.31
CPU个数_核心数_线程数之间的关系
不可忽略!户外LED显示屏的特点及优势
smp,numa和mpp体系结构总结
使用 PowerShell 将 Windows 转发事件导入 SQL Server
socket快速理解
leetcode SVM
请问下这个hologres维表是被缓存了么?怎么直接Finished了