它是做什么的
XR Origin (XR Rig) 是 XR Interaction Toolkit 提供的标准 VR 玩家 rig,不是一个单纯的摄像机,而是一整套 VR 玩家基础结构。
它包含的能力:
- 头显位置和旋转追踪
- 左右手柄位置和旋转追踪
- 远距离射线式交互
- 近距离触碰式交互
- 传送交互
- 可选的凝视交互
- 连续移动、快速转向、平滑转向、重力、攀爬、跳跃、抓取移动等 Locomotion 功能
- 自动启用 XRI 默认输入动作资源
- 用
CharacterController表示玩家身体碰撞
对当前 VR 点云实验项目,它比手工一点点拼 XR Origin 更适合作为长期维护的基础。
总体层级结构
XR Origin (XR Rig)
├─ Camera Offset
│ ├─ Main Camera
│ ├─ Gaze Interactor
│ ├─ Gaze Stabilized
│ │ └─ Gaze Stabilized Attach
│ ├─ Left Controller
│ │ ├─ Left Controller Visual
│ │ ├─ Poke Interactor
│ │ │ └─ Poke Point Affordances
│ │ ├─ Teleport Interactor
│ │ └─ Near-Far Interactor
│ ├─ Left Controller Teleport Stabilized Origin
│ │ └─ Left Controller Stabilized Attach
│ ├─ Right Controller
│ │ ├─ Right Controller Visual
│ │ ├─ Poke Interactor
│ │ │ └─ Poke Point Affordances
│ │ ├─ Teleport Interactor
│ │ └─ Near-Far Interactor
│ └─ Right Controller Teleport Stabilized Origin
│ └─ Right Controller Stabilized Attach
└─ Locomotion
├─ Turn
├─ Move
├─ Grab Move
└─ ...
根对象 XR Origin (XR Rig)
| 组件 | 作用 |
|---|---|
Transform | 玩家整体的世界变换(移动、转向)。 |
XROrigin | 头显偏移原点组件;负责把头显位姿套到 Camera Offset 上。 |
CharacterController | 玩家身体碰撞体;与 Locomotion 配合做连续移动。 |
InputActionManager | 启用 XRI 默认输入动作资源。 |
XRInputModalityManager | 控制器 / 手部追踪输入模式切换。 |
XRGazeAssistance | 凝视辅助(可选)。 |
Camera Offset → Main Camera
| 组件 | 作用 |
|---|---|
Camera | Unity Camera 组件。 |
AudioListener | 接收场景音频。 |
TrackedPoseDriver | 把头显位姿同步到 Camera。 |
Left Controller / Right Controller
每个控制器预制结构基本一致:
| 组件 | 作用 |
|---|---|
TrackedPoseDriver | 把控制器位姿同步到 transform。 |
ControllerInputActionManager | 绑定控制器的输入动作。 |
XRInteractionGroup | 把这台手柄下的多个 Interactor 组成一个交互组,组内优先级高的先处理。 |
HapticImpulsePlayer | 震动反馈。 |
Poke Interactor | 近距离触碰式交互(手指戳按钮)。 |
Teleport Interactor | 传送。 |
Near-Far Interactor | 统一交互器(远距射线 + 近距 + UI + 附着)。 |
Poke Point Affordances | Poke 命中时的视觉反馈。 |
Controller Visual | 手柄的 3D 模型。 |
每个控制器下还配有一个 * Teleport Stabilized Origin,作为传送时的稳定化锚点。
Locomotion 系统
根对象下的 Locomotion 子树负责玩家移动:
| 组件 | 作用 |
|---|---|
Turn | 平滑 / 瞬间转向。 |
Move | 摇杆连续移动。 |
Grab Move | 抓取世界移动。 |
| 其他可选能力 | 重力、攀爬、跳跃等。 |
VR 点云实验通常不需要完整的 Locomotion,可以保留基础转向并禁用 Move,避免被试者误操作远离目标模型。