OpenXR开发实战项目之制作一款简单VR示例场景的全过程

一、版本选型

选择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 ManagerXR Origin

我们在XR****Interaction Manager上添加一个Input Action Manager的脚本,并将XRI Default Input Actions

六、打包应用到Oculus Quest真机测试

打包应用很简单, File -> Build Settings 。
只要安装了安卓模块,点击小机器人安卓,切换成安卓平台。点击 Project Settings ,修改一下包名和公司名。


最后点击Build就好了!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,123评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,031评论 2 384
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,723评论 0 345
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,357评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,412评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,760评论 1 289
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,904评论 3 405
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,672评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,118评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,456评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,599评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,264评论 4 328
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,857评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,731评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,956评论 1 264
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,286评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,465评论 2 348

推荐阅读更多精彩内容