Table of Contents

问题排查

排查前先记录 SDK 版本、Unity 版本、目标平台、图形接口、输入后端和设备服务版本,并检查 Console 中出现的首个错误。

没有立体显示

  • 检查场景是否包含已启用的 XRRig,是否有其他相机覆盖其画面。
  • 普通 PC 上的单目显示属于预期开发方式,最终效果需要在目标设备验证。
  • 在编辑器中预览时,检查 Windows/Direct3D11 条件与 Enable Stereo Display 开关。
  • WebGL 需要在通信对象和设备服务就绪后发送 SetXRMode 请求,见WebGL 发布说明

触笔无法交互

先确认触笔姿态是否更新。若姿态正常而交互无效,检查以下配置:

  1. 场景中存在一个负责交互的 EventSystem,并使用与输入后端匹配的 Kmax 输入模块。
  2. UI Canvas 包含 KmaxUIRaycaster,Event Camera 指向中心相机。
  3. 3D 物体包含 Collider,需要拖拽时添加相应拖拽组件。
  4. 目标物体所在层包含在触笔检测层中,射线长度能够覆盖目标。

迁移后出现输入错误时,参见输入系统

UI 比例或位置不正确

确认 Canvas 使用 World Space,并检查 UIScaler 的参考分辨率、同步开关以及 XRRig 的屏幕比例和 View Scale。2.6.1 修复了编辑器中 Fix Canvas 使用错误窗口尺寸的问题,旧版本应先升级后重新检查布局。

需要将 UI 固定在虚拟屏幕以外的位置时,注意 UIScaler.SyncAlways 默认会持续覆盖画布姿态。

MainCamera 返回 null

XRRig.MainCameraXRRig 尚未初始化或未配置立体相机时返回 null。运行时加载场景或预制体后,再获取相机;不要直接解引用尚未就绪的相机。

示例出现组件或依赖缺失

确认导入的是当前 SDK 版本的示例。Input System 示例需要安装并启用 Input System;内置管线后期处理示例需要对应的 Post Processing 包。升级包不会自动替换已导入的旧示例目录。

远程调试没有响应

检查 Android 平台、USB 调试授权、Unity Remote-KXR 连接和 Play 模式状态,具体步骤见M1 远程调试