PicoVR 开发入门教程系列(二) -- XR Interaction ToolKit集成
0. 简单背景
根据第一篇文章已经完成了基础功能的搭建.
其中使用的XR | XR Rig 是Device-based, 依赖硬件, Unity官方推出了一个插件XR Interaction Toolkit来解决硬件不同导致的Input不同.
具体的官方文档可以参考: docs.unity3d.com/Packages/co…
1. XR Interaction Tookit 插件的集成
Window | Package Manager | Advanced选择Show preview packagesWindow | Package Manager | Unity Registry | XR Interaction Toolkit
- 可以导入
Samples中的Default Input Actions和XR Device Simulator到Project
- 选择
Project | Assest | Samples | XR Interaction ToolKit | xx | Default Input Actions | XRI Default Left Controller, 然后在Inspector | 点击 Add to ActionBasedController Default - 选择
Project | Assest | Samples | XR Interaction ToolKit | xx | Default Input Actions | XRI Default Right Controller, 然后在Inspector | 点击 Add to ActionBasedController Default
- 在
Edit | Project Settings | Preset Manager | Filter中增加过滤关键字
- 在进行基础配置以后, 重新创建
XR | Room-Scale XR Rig(Action-based), 这时就是使用的Action-basedAPI, 可以一套Input兼容多个硬件设备. - 在引入
XR Interaction ToolKit以后, 原来项目中的XR Rig会自动改名为Device-based, 我们可以手动创建新的XR Rig(Action-based), 并且能看到, 这个新的XR Rig中的LeftHand Controller的属性配置是通过XRI Default xxx进行预先配置的!!! - 两者除了硬件输入不同, 其他的功能完全一样!!! 因此使用两个
XR Rig开发都可以, 但是Action-based能更好的Cross Platform
- 给
XR Rig(Action-based)添加一个Script组件Input Action Manager(Script), 然后设置Action Assets | Size 为0, 然后再Element 0设置成XRI Default Input Action(InputActionAsset), 这样就配置好了全局的Input Action Manager