Inverse3 以及 VerseGrip 的光标
Haply Inverse Unity 套件包含专为Inverse3 设备和 VerseGrip 设备设计的专用光标组件,可在 Unity 环境中实现精准的控制与交互。 这些组件(Inverse3 光标和 VerseGrip 光标)旨在根据从相应设备控制器接收到的数据,动态调整游戏对象的位置和旋转。
概述
光标组件起到连接物理设备Haply 与 Unity 中的虚拟游戏对象的作用,将设备的位移和旋转数据转换为游戏对象的移动和朝向。 通过这种转换,用户可以直观地与虚拟环境进行交互,物理动作会在虚拟空间中以相应的反应形式呈现出来。
CursorBase 类
光标组件的核心是 CursorBase 在课堂上,Inverse3Cursor 和 VerseGripCursor 提供两者共有的基本功能。
其中包括设备关联、模型实例化以及显示控制的管理。
主要属性与方法
- 设备:与控制光标的设备相关联。该设置将在运行时自动完成。
- 模型预制: 指定用于光标模型的预制件。该预制件是
ModelParent将作为其子类自动实例化。 - ModelParent:定义实例化模型预制件的父变换。如果未设置,则默认使用光标的变换。
- 模型: 直接引用场景中的现有光标模型。设置后,
ModelPrefab不会进行实例化。 - HideControllerModel:控制光标模型的显示状态。可根据游戏玩法的需求,动态地在显示和隐藏之间切换。
- 半径:表示当光标模型为球体时的半径。该值根据模型的网格边界计算得出。
- 光滑度:
PositionSmoothness和RotationSmoothness该功能提供了用于使光标位置和旋转更加流畅的选项,从而提升用户体验。
注:在光标组件中正确引用光标模型,对于避免出现意外行为至关重要。

在Haptic Rig中创建的默认光标模型上,有三个代表不同轴向的彩色圆点:Forward(蓝色)、Up(绿色)和Right(红色)。 这种设计有助于直观地掌握设备在虚拟环境中的朝向。对于已校准的VerseGrip,应将Forward对准指向方向,将Up对准顶部。
Inverse3 光标组件
Inverse3Cursor 该功能专为Inverse3 设备设计,用于更新Unity中光标的本地位置,使其反映设备的物理位置。
PositionSmoothness 在设置中,您可以调整光标移动的平滑度。通过控制光标对物理动作的响应程度,可以提升用户体验。
VerseGrip Cursor 组件
VerseGripCursor 该功能可扩展 VerseGrip 设备的功能,并根据设备的物理旋转情况,更新 Unity 中的光标旋转方向。
useDeviceLocalSpace 通过设置,可以选择是与世界方向还是与父对象方向对齐,从而提高了设计的灵活性。
RotationSmoothness 该设置用于控制光标旋转的平滑度。通过此设置,开发人员可以精细调整光标对物理 VerseGrip 方向变化的响应程度。
实现细节
在初始化时,Model 如果未分配,则光标组件将使用指定的 ModelPrefab を ModelParent 将其作为子对象实例化,以确保在场景中的视觉呈现。
这些组件与相关的 设备控制器 与之同步,并根据物理设备的移动实时调整光标的位置和旋转。
既可以将这两个组件附加到同一个 GameObject 上以控制其位置和旋转,也可以根据具体用途将它们分别附加到不同的 GameObject 上。这使得开发者能够利用这些灵活的工具,在 Unity 中创建身临其境的触觉体验。