Unity3D 学习笔记(六) 手柄配置

手柄键位

image.png
Windows
image.png
Mac
image.png
Linux

设置摇杆、十字键和XYAB

Edit——> project settings ——>input
image.png

类型设置为joystick axis
image.png

axis里面有许多的轴,对照上面的xbox手柄键位图,这里的XY轴,45轴和67轴就分别对应两个摇杆和十字键
image.png

修改Axes里面的Size可以增加轴的数量
image.png

也可以直接右键duplicate复制
image.png

将其改为对应的轴,然后继续添加十字键的两轴,pad意为十字键,V和H分别是Vertical和horizontal
image.png
image.png

把xyab也对应设置完成
image.png

建立一个调试脚本来看看刚才的设置,其脚本为

using System.Collections;

using System.Collections.Generic;

using UnityEngine;

public class JoystickTest : MonoBehaviour

{

    void Update()

    {

        print("Y1 : "+ Input.GetAxis("Dup"));

        print("X1 : "+ Input.GetAxis("Dright"));

        print("Y2 : "+ Input.GetAxis("Jup"));

        print("X2 : "+ Input.GetAxis("Jright"));

        print("pad Y : "+ Input.GetAxis("Vpad"));

        print("pad X : "+ Input.GetAxis("Hpad"));

        print("X:" + Input.GetButtonDown("btnx"));

        print("Y:" + Input.GetButtonDown("btny"));

        print("A:" + Input.GetButtonDown("btna"));

        print("B:" + Input.GetButtonDown("btnb"));

    }

}

输出数据可能有点多,可以注释其他的一个一个来检查。

image.png

试了好几遍发现没反应,原来是手柄没插。。。。

插上手柄重新运行一次可以看到系统能检测到对应的数据输入

image.png

扳机和肩键

接下来添加扳机和肩键

继续Duplicate设置好两个肩键。

image.png

然后因为我们的xbox是线性扳机嘛那么他既然有一个模拟量的输出自然应该是个轴,根据图中我们也可以看到是轴3

因此继续duplicate

image.png

修改一下测试脚本

        print("Bumper : "+ Input.GetAxis("Bumper"));

        print("LB:" + Input.GetButtonDown("LB"));

        print("RB:" + Input.GetButtonDown("RB"));

image.png

可以正常运行,左扳机LB对应Input.GetAxis(“Bumper”)返回值为正而右扳机LB对应Input.GetAxis(“Bumper”)返回值为负

如果你是其他手柄这里是按键的话改成button然后测试脚本用Input.GetButtonDown()就好了

这里我测试的时候用的不是我手上的这个xboxones的手柄而是把yesojo的pro手柄接上去识别成了xbox360,所以Bumper只有-1和1而没有中间值

为啥不用xboxones的手柄呢。。。因为在家这么多天,电池没电了我也没买电池。。。
image.png

  • 6
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

豆沙粽子好吃嘛!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值