Table of Contents

快速开始

导入SDK

1. 下载

如果你还没有SDK,你可以从这里下载最新版本的SDK。

2. 解压

将下载的zip文件解压到一个你认为合适的地方,但不是你的工程内。

3. 导入

  • 打开目标unity工程
  • 打开package manager
  • 点击左上角+,选择from disk
  • 选择刚才解压的目录中的package.json文件

package manager

成功后你的package manager中应该已经包含了我们的SDK。

package manager

项目配置

1. PlayerSettings配置

  • 打开Build Setting面板
  • 切换到Android平台
  • 点击Player Setting按钮,调整Other Settings中的配置,步骤如下所示
    • 最低安卓API版本使用 API level 26
    • Scripting Backend使用IL2CPP
    • Target Architectures框选ARMv7ARM64
      playersetting-0
    • Graphic API优先OpenGLES3(我们还不支持Vulkan,你可以移除它或者像下图一样将它放在OpenGLES3的下面)
      playersetting-1

2. 在现有项目上稍加修改

修改主要包含两部分:

  • 替换传统相机为支持VR渲染的相机
  • 替换常规输入模块为支持空间交互的输入模块

修改相机

  • 删除或隐藏原有的相机
  • xrrig拖入场景,替换原有相机 xrrig

修改输入模块

  • 选择场景内的EventSystem,移除默认的InputModule(如:StandaloneInputModule)
  • 添加KmaxInputModule
    eventsystem

此时你的场景已经具备了支持Kmax VR必备的元素,包含了眼镜和笔的追踪,以及3D立体显示,基于笔的空间交互支持。
实际上SDK集成了鼠标、射线笔、触摸三种事件检测,它是基于Unity Event System的。

Warning

需要注意如果你项目已经有了除StandaloneInputModule外的其他InputModule组件也需要移除,我们不能保证KmaxInputModule与其他组件的兼容性。

UI

  • 对于场景中已有的画布,需要确保该画布的格式正确,画布的渲染模式必须是world space,EventCamera选择主相机

  • Canvas下新增KmaxUIFacade.csUIScaler.cs,然后鼠标停留在UIScaler组件上点击右键选择AutoFix以适应屏幕
    canvas01

    canvas02

Warning

需要注意的是,你的UICanvas需要跟XRRig的物体位置一致,这样才能保证UI画面不会由于眼镜跟随而发生偏移。

运行测试

通常我们都是在PC上进行项目开发,最终发布到设备上验证实际的效果。
这个过程有许多不便之处,我们已经推出类似unity remote的远程调试功能,详情请看这里

Tip

运行场景默认显示为单眼画面,但实际上立体显示是需要双目画面的。如果你需要确认双目画面,可以选中xrrigInspector面板中点击Switch to Side By Side切换为左右格式。

其他

如果需要支持拖拽物体,我们在SDK中内置了StylusDragable.cs脚本,只需要将该脚本挂载在需要拖拽的物体上即可(该物体需要包含Collider否则射线检测将无法生效)。

dragable