unity中连接Xbox手柄设置及按键检测
首先介绍一下unity输入设置参数所代表的含义
参数名 | 作用描述 |
Name 名称 | 轴的名称,用于游戏加载界面和脚本中。 |
Descriptive Name 描述 | 游戏加载界面中,轴的正向按键的详细描述。 |
Descriptive Negative Name 反向描述 |
游戏加载界面中,轴的反向按键的详细描述。 |
Negative Button 反向按钮 | 该按钮会给轴发送一个负值。 |
Alt Negative Button 备选反向按钮 | 给轴发送负值的另一个按钮。 |
Alt Positive Button 备选正向按钮 | 给轴发送正值的另一个按钮。 |
Gravity 重力 | 输入复位的速度,仅用于类型为 键/鼠标 的按键。 |
Dead 阈 | 任何小于该值的输入值(不论正负值)都会被视为0,用于摇杆。 |
Sensitivity灵敏度 | 对于键盘输入,该值越大则响应时间越快,该值越小则越平滑。对于鼠标输入,设置该值会对鼠标的实际移动距离按比例缩放。 |
Snap 对齐 | 如果启用该设置,当轴收到反向的输入信号时,轴的数值会立即置为0,仅用于键/鼠标 输入。 |
Invert 反转 | 启用该参数可以让正向按钮发送负值,反向按钮发送正值。 |
Type 类型 | 所有的按钮输入都应设置为 键/鼠标 (Key / Mouse) 类型,对于鼠标移动和滚轮应设为 鼠标移动(Mouse Movement)。摇杆设为摇杆轴 (Joystick Axis),用户移动窗口设为窗口移动 (Window Movement)。 |
Axis 轴 | 设备的输入轴(摇杆,鼠标,手柄等)。 |
Joy Num 摇杆编号 | 设置使用哪个摇杆。默认是接收所有摇杆的输入。仅用于输入轴和非按键。 |
手柄在unity输入设置示意图
左摇杆参数设置(8)
右摇杆参数设置(9)
十字键参数设置
LTRT键参数设置
这里的左右扳机(按左键返回正值,按右键返回负值)
设置好参数后,我们通过代码检测到按键信息
*以下是摇杆、十字键、和扳机键的检测设定。
using UnityEngine;
using System.Collections;public class GetInput : MonoBehaviour {void Update(){float hl = Input.GetAxis ("Horizontal_Left");float vl = Input.GetAxis ("Vertical_Left");float x = Input.GetAxis ("Xbox +X");float y = Input.GetAxis ("Xbox +Y");float hr = Input.GetAxis ("Horizontal_Right");float vr = Input.GetAxis ("Vertical_Right");float t = Input.GetAxis ("LRT");if(Mathf.Abs(hl)>0.05f || Mathf.Abs(vl) > 0.05f){print ("leftX:" + hl);print ("leftY:" + vl);}if(Mathf.Abs(x)>0.05f || Mathf.Abs(y) > 0.05f){print ("Xbox +X:" + x);print ("Xbox +Y:" + y);}if(Mathf.Abs(hr)>0.05f || Mathf.Abs(vr) > 0.05f){print ("RightX:" + hr);print ("RightY:" + vr);}if(Mathf.Abs(t)>0.05f){print ("LRT:" + t);}}
}
*以下是除去摇杆后的按键对应信息
A | JoystickButton0/Joystick1Button0 |
B | JoystickButton1/Joystick1Button1 |
X | JoystickButton2/Joystick1Button2 |
Y | JoystickButton3/Joystick1Button3 |
LB | JoystickButton4/Joystick1Button4 |
RB | JoystickButton5/Joystick1Button5 |
BACK | JoystickButton6/Joystick1Button6 |
START | JoystickButton7/Joystick1Button7 |
左摇杆DOWN | JoystickButton8/Joystick1Button8 |
右摇杆DOWN | JoystickButton9/Joystick1Button9 |
以上如有误可评论区给予批评,谢谢留言
unity中连接Xbox手柄设置及按键检测相关推荐
- WSL2下连接XBOX手柄详细教程
WSL2下连接手柄操作 前言 连接USB设备 重新编译内核 参考 前言 最近由于项目需要,要求在linux下连接xbox手柄去控制水下机器人(所以没有办法直接连在机器人上面)所以有了需要在WSL2上连 ...
- Unity中SteamVR2.0 手柄交互调用方式
再次接触到HTC Vive项目时发现交互已经跟几年前的写法不一样了,而且VRTK插件也需要找对应的版本才行,否则会报错,版本已经不兼容. 这里总结下我在项目中遇到的手柄交互在Unity中的调用: 1. ...
- Unity3D研究院之Unity中连接本地或局域网MySQL数据库
用户名 Email 游戏蛮牛 手机端 开启辅助访问 腾讯QQ 立即注册 登录 用户名 自动登录 找回密码 密码 登录 注册帐号 [Unity5.X版本开始预售啦!] 扫一扫,访问微社区 </ ...
- [Unity 开发]小米蓝牙手柄与UnityJoyStick 按键对应 2017
图片中 纯数字表示Unity中对应的Button,例如 if (Input.GetKey(KeyCode.Joystick1Button7)) { print("btn 7&quo ...
- 蒙皮骨骼动画 unity_在Unity中沿航路点设置蒙皮网格动画
蒙皮骨骼动画 unity This post is a guide to importing a skinned mesh with a looping animation and then anim ...
- 浅谈各种连接池中连接数量的设置
连接池中连接数量的配置 我们日常开发中经常会用到各种连接池,比如httpclient和jediscluster以及druid等数据库连接池,当使用这些连接池的时候我们总是很疑惑到底要怎么配置连接池中连 ...
- Unity中特效透明度动态设置
在Unity开发中,特效的透明度无法直接使用代码或者动画直接控制很不方便,便制作了一个一个脚本,专用来控制一个节点下的所有子节点的透明度. using System; using System.Col ...
- mysql雨凇_Unity3D研究院之Unity中连接本地或局域网MySQL数据库(五十九) | 雨松MOMO程序研究院...
using UnityEngine; using System; using System.Data; using System.Collections; using MySql.Data.MySql ...
- Unity中使用VR手柄射线触发UI事件
创建射线检测,确定起点和终点 public class LineController : SingletonMono<LineController> {//属性[HideInInspect ...
最新文章
- 【SVN】svn“E155017工作副本的参考文件损坏、E200014文件校验和不匹配”的解决方法
- 比特币官网管理者因支持BCH被建议移交权限
- php扫描蓝牙设备接口,微信硬件蓝牙扫描某个设备接口onScanWXDeviceResult
- oracle导入java包时出错,Oracle导入导出的常见错误
- java mapper control_java spring boot中怎么编写mapper?怎么编写service和controller?
- encoder decoder模型_3分钟|聊一聊 Decoder 模块
- Windows Store 开发总结——文件操作
- 蓝桥杯 ADV-204 算法提高 快速幂
- hive load data外部表报错_从0开始学大数据-Hive基础篇
- 日记html模板,【精选】初二日记模板集锦7篇
- 码云提交不显示贡献度问题
- JWT 避坑指南:nbf 验签失效问题的解决
- 端口映射vc++6.0编译【转】
- 容器技术在云中如何定位
- 什么是MTU值,如何设置最快最好?
- 【Matlab】使用反步法设计控制器
- [NOIP2010 普及组] 数字统计
- 自动驾驶中激光雷达如何检测障碍物
- java反射机制的实现原理 (一)
- 可能是最全的运营工具集合了