【问题标题】:How can I add button input from VR controllers in VRTK 4 Beta (Unity)?如何在 VRTK 4 Beta (Unity) 中添加来自 VR 控制器的按钮输入?
【发布时间】:2020-04-24 15:22:57
【问题描述】:

我想在我的 Unity 场景中使用按钮来触发动作,但是当我按下按钮时,我不知道如何调用相应的方法。我使用 VRTK 4(测试版),找不到任何有用的文档或回答问题。

【问题讨论】:

    标签: c# unity3d virtual-reality vrtk


    【解决方案1】:

    VRTK 版本 4.0 测试版

    1. 从此表中查找“传统输入索引”以查找您设备的按钮:https://docs.unity3d.com/Manual/xr_input.html
    2. 检查相应的功能类型。
      • 如果是按钮,则无需将其添加到“项目设置->输入”列表中。
      • 如果是轴,则需要将其添加到“项目设置->输入”列表中(通过增加列表的大小)。查看其他(类似)按钮并复制方案:

    Example Left Oculus Trigger:
    Name: VRTK_Axis9_LeftTrigger *[Adapt your name]*
    [...] Gravity: 0
    Dead: 0.001
    Sensitivity: 1
    [...]
    Type: Joystick Axis
    Axis: 9th axis (Joysticks) *[Enter the index number you've looked up before]*
    Joy Num: Get Motion from all Joysticks
    

    在此处查看属性及其描述:https://docs.unity3d.com/Manual/class-InputManager.html


    1. 在 Unity 中创建一个新的游戏对象。
      • 如果是按钮:
        • 添加 Zinnia UnityButtonAction 脚本。将“Joystick [您查找的索引号]”设置为键码。
      • 如果是 1DAxis:
        • 并且你想要它的值(浮点数):
          • 添加 VRTK UnityAxis1DAction 脚本。从“项目设置->输入”中设置名称 (在示例“VRTK_Axis9_LeftTrigger”中)作为轴名称。
        • 并且您希望它被按下/释放(布尔):
          • 添加 VRTK UnityAxis1DAction 脚本。从“项目设置->输入”中设置名称 (在示例“VRTK_Axis9_LeftTrigger”中)作为轴名称。
          • 添加 Zinnia FloatToBoolean 脚本。在“Transformed”字段中,引用 GameObject 本身(按 + 添加)。选择 BooleanAction.Receive。
          • 添加 Zinnia BooleanAction 脚本。在“Activated”字段中,引用应对按钮状态做出反应的 GameObject(按 + 添加)并选择在按下按钮时应调用的方法。 (使用方法重复“停用”字段,该方法应被调用,当 按钮被释放。)
      • 如果是 2DAxis:
        • 并且你想要它的值:
          • 添加 VRTK UnityAxis2DAction 脚本。将 x 和 y 轴的“项目设置 -> 输入”中的名称设置为相应的 X 轴名称和 Y 轴名称。

    我希望这可以帮助您开始使用新的 VRTK 版本!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-07-20
      • 1970-01-01
      • 2021-06-24
      • 1970-01-01
      • 1970-01-01
      • 2018-09-19
      • 1970-01-01
      相关资源
      最近更新 更多