一、版本选型
选择Unlversal Render Plpeline,这个模板对渲染能力有所增强,更适合VR设备,建议使用Unity 2020.2 版本以上的
二、 添加XRPluginManagement
添加XR交互工具包
安装完成之后界面
然后点击OpenXR,等待Unity操作之后弹出一个窗口,我们点击Yes即可。这个窗口是提示我们使用新的输入系统,这也是使用OpenXR的一个条件。
等待执行完毕后,会出现一个黄色感叹号,我们点击查看。
它是在提示我们有些Unity设置与OpenXR不兼容,我们按照他的要求进行修改就好了。
比如我下面这两个警告,第一个是提示说需要添加一个交互配置文件,点击Edit就会进入OpenXR界面。也可以在面板上直接点击OpenXR进入,效果是一样的。
选择交互配置文件就好了,也可以添加多个选项适应不同的设备。
这里还有一个点需要注意,我们可以在这里设置Render Mode 渲染模式,如果你在运行项目的时候只有一只眼睛显示,那有可能是这里设置了单通道模式,改为多通道就恢复正常了。
同样的多通道模式会对画面渲染两次,性能消耗会多一些。但是对于VR设备来说,显然多通道是更合适的, 所以我们改为多通道模式。
第二个是锁定游戏输入到游戏视图,直接点Fix修复就好了
打开 XR Plugin Managment,选择安卓标签,勾选OpenXR。
如果没有这个小机器人的标签,那就是你的Unity没有安装安卓模块,打开UnityHub为对应的Unity版本安装安卓模块即可
然后点击OpenXR,将渲染模式改为Multi Pass,然后将Oculus的Support勾选,并将手柄添加上即可。这样就完成了打包成安卓应用并发布在Oculus Quest2的基本设置了。
PS:之前是勾选的Oculus,原因是勾选OpenXR的话会导致打包的应用2D显示,但是经过测试发现,直接勾选OpenXR,然后将Oculus的依赖添加上也是可以正常在Oculus Quest2上正常运行的,所以这里就把这个地方修正了。如果是其他家的VR厂商,只需要在这里勾选自己家的依赖就好了。
然后现在项目中多出了一个XR的文件夹,里面保存着我们的一些关于XR的配置
导入XRInteractionToolkit并配置
点击 Window-> PackageManager ,导入 XRInteractionToolkit包。如果在PackageManager中没有找到XR Interaction Toolkit就点击AdcancedProjectSettings,勾选EnablePreviewPackage,启用预发布包,在弹出的窗口中点击同意。
回到界面,工具包已经安装好了。
然后点击导入默认动作配置,这样会将我们最终使用的动作导入,如下图所示:
三、添加预设的输入动作
此时我们的项目中会多出几个文件夹,如下图所示:
Sample文件夹里面有一些预设的输入动作脚本
XRI Default Continuous Move 用于连续移动
XRI Default Continuous Turn 用于连续转弯
XRI Default Input Actions 默认的输入操作
XRI Default Left Controller 左手控制器
XRI Default Right Controller 右手控制器
XRI Default Snap Turn 快速转身控制
在文件夹中挨个点击 XRI Default Left Controller,然后在监视器面板上点击 Add to XRI Default Left Controller
然后再打开 Project Settings-> Preset Manager ,可以看到在预设管理器中我们刚刚设置的都在这里了。
接下来在面板上给左右手控制器设置上 Right 和 Left,因为某些原因当我们添加上控制器时,不会自动区分左右手,所以我们手动设置上
如下图所示:
五、添加一个简单的示例场景
在场景中新建一个平面,然后点击 XR-> XR Origin(Action-based)
这个XR选项中的东西可能经常会发生改变,因为他在不断的进行更新。之前应该是 XR Rig,现在为 XROrigin(Action-based)*
添加完了之后,面板上会出现一个XR Interaction Manager和XR Origin。
我们在XR****Interaction Manager上添加一个Input Action Manager的脚本,并将XRI Default Input Actions
六、打包应用到Oculus Quest真机测试
打包应用很简单, File -> Build Settings 。
只要安装了安卓模块,点击小机器人安卓,切换成安卓平台。点击 Project Settings ,修改一下包名和公司名。
最后点击Build就好了!
网友评论