0

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

4

1 回答 1

0

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 中创建一个新的游戏对象。
    • 如果是按钮:
      • 添加百日草 UnityButtonAction 脚本。将“操纵杆[您查找的索引号]”设置为键码。
    • 如果是 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 版本!

于 2020-04-24T15:22:57.683 回答