Unity之OpenXR+XR Interaction Toolkit快速监听手柄任意按键事件

前言

当我们开发一个VR时,有时希望监听一个手柄按键的点击事件,或者一个按钮的Value值等。但是每次有可能监听的按钮有不一样,有可能监听的值不一样,那么每次这么折腾,有点累了,难道就没有一个万能的方法,让我可以直接监听我想要的某个按钮的事件么?
答案是肯定的,今天我们就来解决这个问题。

新版InputSystem

在开始之前,我们先来回顾一下新版InputSystem,因为它才是我们今天的主角。
在这里插入图片描述
新版InputSystem有以下几个特点:
1.统一的输入处理:新版Input System提供了一种统一的方式来处理用户输入,无论是来自键盘、鼠标、手柄、触摸屏、VR设备还是其他输入设备,都可以通过同一套API来管理和处理。
2.InputAction的抽象层:通过InputAction可以将输入和操作(例如“移动”、“跳跃”、“攻击”等)进行抽象和封装,使得游戏逻辑与具体输入设备解耦,从而更容易进行输入的替换和配置。
3.支持多平台和多设备:新版Input System支持多种平台和设备,包括PC、移动设备、游戏主机以及VR/AR设备等,同时提供了对不同输入设备的适配和配置功能。

示例

比如我们想实现一个跳跃功能,
老版本的实现如下所示:

相关推荐

  1. uniapp监听TV电视遥控器的红外按键事件

    2024-04-21 02:54:02       49 阅读
  2. Unity按键相关的事件(自己记忆用)

    2024-04-21 02:54:02       40 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-21 02:54:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-21 02:54:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-21 02:54:02       87 阅读
  4. Python语言-面向对象

    2024-04-21 02:54:02       96 阅读

热门阅读

  1. NLP和LLMs: 理解它们之间的区别

    2024-04-21 02:54:02       35 阅读
  2. Oracle中的时间戳转换与使用

    2024-04-21 02:54:02       36 阅读
  3. Android开发学习(1)--楔子

    2024-04-21 02:54:02       37 阅读
  4. [论文笔记] megatron训练参数:dataloader_type

    2024-04-21 02:54:02       32 阅读
  5. Blender3.6下载地址

    2024-04-21 02:54:02       37 阅读
  6. 前端遇到的问题

    2024-04-21 02:54:02       35 阅读
  7. Oracle存储过程的使用与实例

    2024-04-21 02:54:02       34 阅读
  8. C# 语言类型(三)—数组/枚举类型/结构体

    2024-04-21 02:54:02       36 阅读
  9. 用爬虫玩转石墨文档

    2024-04-21 02:54:02       36 阅读
  10. C语言经典例题-20

    2024-04-21 02:54:02       41 阅读
  11. 【第一章 先导篇】1. 规范化的学习模型

    2024-04-21 02:54:02       32 阅读