pico相关插件介绍

更新于2026年1月19号

0-教程

这玩意更新太快了,新的SDK使用比之前的有一些不同,不过大体一致。新的SDK配置官网上也有详细的教程了。
现在的视频教程网址: https://www.spatialxr.tech/
文章教程: https://developer.unity.cn/projects/65769b0dedbc2a44a9bb1e20

1-unityXR开发架构



2-XR Interaction Toolkit(XRI)



untiy 提供的xr开发套件,与平台无关,提供了很多xr开发的基础功能,用来做应用内容,新建项目时可以从模板开始,里边提供了一些常用功能。

unity官方推出的一款XR通用交互开发工具包,叫做XR Interaction Toolkit,它就具有跨平台的特性,他提供了比较丰富的交互功能,并且适用于跨平台的XR开发。3.0之前的版本和3.0之后的版本有了非常大的更新变动。所以之前市面上的教程都是2.X版本的其实已经用不到当今版本的开发了。而现在许多XR设备的新版开发方案,已经强制需要使用XR interaction Toolkit3.0以上的版本了,否则就会报错。使用meta Quest 3来展示应用效果,但是同样也适用于苹果和pico。只不过一些环境配置和交互脚本的使用上有些差别。
https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@3.4/manual/examples.html


用手柄抓取物体,就是interactor和interactable
转动手柄摇杆去控制人物的移动,只有inerataction在交互。

实际开发过程中会经常用到的概念

3-SteamVR sdk

专门提供PC端的VR开发。

4-OpenVR

是V社自己搞得适用于steamVR的协议,在openXR出现前试图提供一个统一的可以部署在steamVR的开发标准,现在已经逐渐废弃
openxr就是定义了一套接口,然后各个硬件厂商能够实现这些接口,将自己的设备兼容到openXR当中。实际上openxr的接口还能够进行扩展。硬件厂商能扩展,将硬件特性带入到openXR当中。
高层可以选择XRI作为交互层的开发工具。另外再使用unity官方退出的通用ARMR开发工具包--ARFoundation,和针对Meta Quest 3推出的MR开发工具包,将这几个工具结合起来,开发方案。

**5-**unityXR

这是untiy自己搞的xr开发套件,用来兼容各家不同的sdk,包括openXR,真正做到一次开发,分平台部署,体现在Untiy中就是这个,我们装了哪家的sdk,下边就会出现那家的选项,我们只要在这里切换目标设备就可以

6-pico的插件

1.PICO Unity Integtation SDK

PICO公司自己的SDK,提供对头盔的驱动,注意最低Untiy版本需求
主要用于开发相关的功能。只能适用于pico平台的开发,不能兼容其他平台的。

https://developer-cn.picoxr.com/document/#develop

2.Pico Unity Live Preview Plugin


https://developer-cn.picoxr.com/document/unity/preview-app-scenes/
串流SDK,用于在unity中调试时将画面投射到头盔里,方便开发,如果使用PDC需要用这个,如果使用Pico互联则不需要,推荐使用pico互联
实时预览场景,用于串流调试,通过 PDC 工具在头戴上实时预览应用内场景

⚠️同时使用 PDC 工具和 "PICO 互联" 软件会导致 PDC 工具运行异常或串流服务异常。
因此,使用 PDC 工具前,请确保 PC 端和头戴端都已退出 "PICO 互联" 软件。PICO 4 Ultra 系列设备不存在该问题。

https://developer-cn.picoxr.com/document/unity/pdc-troubleshooting/

3.pico unity openXR sdk

OpenXR是国际通用的vr开发协议,目的是为了解决各个硬件设备自己搞自己的sdk,导致开发不兼容的情况
理论上有了openXR,一次开发就可以部署到多个不同品牌的设备里。
现在主流设备都支持openXR,但各家 依然保留了自己的sdk,所以一般都会提供两套sdk,一套私有的,一套支持openXR的,但很多新特性只有私有SDK才支持

主要用于开发相关的功能,本身就是用于跨平台的开发,设计的愿景就是开发者只需要编写一次代码,就能够把这个XR的应用打包发布到不同的硬件设备上。要额外再导入一个pico unity openXR sdk.因此选用openXR作为底层插件,结合XR interaction toolkit作为高层的开发sdk,我们就可以用这套组合的开发方式,来进行跨平台设备的开发。但是更新频率很慢。
苹果目前不支持openXR标准
Unity之OpenXR+XR Interaction Toolkit接入HTC Vive
前言
目前VR领域,最流行的设备要当属HTC VIVE了。以前在Unity端接入HTC VIVE设备时,都是通过SteamVR+VRTK来接入的。但是随着Unity的版本升级和OpenXR标准的流行,再加上VR设备的逐渐增多。SteamVR+VRTK的方式已经无法更好的满足大家的需求。
我今天为大家分享的就是,如何基于Unity2020或Unity2021, 通过OpenXR标准来接入VR,可以同时适配所有的VR设备,包括HTC ViVE,Pico,Occlus等,今后不管什么设备只要API是符合OpenXR标准,我们就可以通过Unity的OpenXR方式接入,而且接入流程非常简单,使用起来也比之前SteamVR+VRTK的方式要简单方便,可谓是一举多得。
openXR
OpenXR 旨在标准化各种 VR / AR 平台上的设备和应用程序之间的规范。它由 Khronos Group 制定,Khronos Group 是一个由 VR/AR 相关公司组成的组织。 微软、HTC,Valve等多家公司都参与了。
随着VR和AR的热潮,越来越多的软件公司开始进入该领域,同时也有越来越多的VR/AR设备出现,在进行VR开发的时候,开发者们要根据不同的VR设备厂商来使用不同的SDK进行应用开发。如果没有跨平台的标准,高昂的开发成本一定会限制市场的增长。如下图所示:

4.pico Unity Avatar SDK

5.PDC平台

简称PDC,该软件提供一些pico开发者工具,还能用于串流调试。

6.串流方式选择

介绍

串流实际上就是电脑帮我们把游戏的画面渲染好,传输到我们的VR眼镜上,我们的VR眼镜相当于一个显示器,本质上是一个本地信号的传输。

注意:

①PicoXR和PicoOpenXR插件互斥,只能选择其一。
②如果想打包Android,两插件选其一都能打包apk,PicoXR插件功能比PicoOpenXR多一点,UE5.6未来PicoOpenXR将渐渐补完PicoXR的独有功能。
③如果想打包exe,进行PC端的VR串流画面给头显,只有选择OpenXR+PicoOpenXR。
④安装PC端的PDC、互联、串流软件时,关闭PC端的防火墙,例如360安全卫士
⑤使用PDC串流时,可以把企业串流或者pico互联的app和exe都关闭。
⑥如果打开2个VR项目,第2个打开项目的PDC串流预览按钮是灰色的,估计PDC串流服务只能单例。
⑦如果想切换PicoOpenXR插件并改回OpenXR/SteamVR串流,发现PC端VR运行时的预览窗口大小不对,可以通过删除项目工程的缓存文件进行修复。
⑧安装PDC的工具包【串流服务】时注意关闭360软件,(仅 PICO 4 Ultra) 前往 设置 > 通用,关闭 电脑互联自动发现 开关,然后再将其开启,从而为 PDC 工具开启串流模式。
⑨开启pdc插件后,引擎默认的fps无法显示

Pico串流分为:

🅰️pico互联(无线)

https://www.bilibili.com/video/BV1pP411w7em/
使用PicoOpenXR+OpenXR插件+Pico互联,无线串流和网速无关,只和你的WiFi发射的最大速率有关,一般支持5G频段的路由器拿来串流
步骤:

  • 电脑端和眼睛端都连同一个WiFi
  • 在电脑端-打开PICO互联exe
  • 在眼镜端-打开pico互联app
  • 两个连着差不多了,再电脑端-打开steam vr,steam实验室(SteamVR串流,项目加载PicoOpenXR + OpenXR插件,(PicoXR插件不支持PC的SteamXR串流模式))
🅱️PDC平台

有线串流
https://www.bilibili.com/video/BV1WP411M7S1/?spm_id_from=333.337.search-card.all.click&vd_source=e885e3d8bb51ad56c660a8504f912255
https://developer-cn.picoxr.com/document/unreal/pdc-faq/
https://www.bilibili.com/video/BV1pi421d7o3/
使用PicoXR+PicoLivePreview插件的【PDC串流调试】,最后安装apk,再投屏到PC显示器实现伪串流。
PDC串流,搭配PicoXR + PicoLivePreview插件,项目需求是打包Android apk。
笔者安装PDC的目的,是用于复制获取Pico一体机内的截图录屏和log
**理由是:**虽然可以PDC串流时调用手势开发,但是rhi为DirectX 11 和PDC串流使得显卡满载导致画面太卡出现拖影黑块,影响优化判断,串流调试结束后,如果使用PicoXR插件打包apk时,需要切回Direct12和勾选实例化立体(Instanced Stereo),
如果需求是打包exe进行PC串流,则只能改成勾选OpenXR+PicoOpenXR插件。
【个人不推荐PDC串流调试,只推荐安装PDC】


主要用于开发apk时,直接使用PC端进行串流调试。PDC串流调试,项目加载PicoXR插件和PicoLivePreview插件,打包apk不影响,打包exe不支持,即使单独勾选PicoXR打包exe成功也不能使用VR串流。
步骤:

  • 用有线先把眼镜和电脑连接
  • PDC平台
  • unity-PicoLivePreview插件

7.pico打包设置

注意事项

  • quality medium,关闭Sync,sync count中选择dont sync
  • vulkan 必须使用unity2020.3.13以上版本,不然在projectSetting-Player-Graphics API中移除Vulkan
  • 是否勾选了pico XR平台

打包的时候,签名关联的 APK 数量超出限制如何处理?

自设备系统版本 5.11.0 起,一个签名(Key)最多可关联 50 个 APK 文件。超出该限制的 APK 文件将无法在 PICO 设备中运行。
处理链接跳转: https://developer-cn.picoxr.com/document/unity/number-of-apks-associated-with-a-key-exceeds-limit/
为什么每次关闭工程再打开的时候就又得设置一遍呢?????????????????????????

xingtong123
key2
zhouzhou123

7-Meta Quest 3设备(pico也差不多)

✅unity安装和环境配置部分

Android build support :Meta Quest 3(支持open XR标准)和pico用的是安卓系统
visionOS build support:苹果的apple vision pro用的是这个visionOS系统
unity分为国际版和国服特供版,可以通过unity版本的后缀
环境配置步骤:
Project Validation就是环境配置的检查工具。它会检查我们项目当中的一些配置是否是符合要求的,不符合的会显示黄色警告和红色报错,有FIX ALL按钮。

  1. unity开发模板的选择
    1. 默认3D(Built-In Render Pipeline)使用unity 内置的渲染管线,需要把模板改成Universal 3D,它使用的是Unity的URP渲染管线,URP渲染管线相比于unity内置的渲染管线,在有些时候可能性能消耗会更少。
  2. 把打包发布的平台切换成Android
  3. Editor➡️Project Setting➡️XR Plugin Managerment➡️Instance➡️plug-in providers插件供应商选择对应的XR插件➡️设置开发架构里的底层插件➡️open XR➡️我们开发的程序就能兼容到pico系统当中➡️开始安装openxr的插件➡️安装成功后弹出弹窗-openxr插件需要使用unity新版的输入系统就是input system,但是新创建unity工程默认的是旧版的输入系统,所以重启一下项目自动导入新版的输入系统➡️Yes
  4. 在PC端和安卓端都需要设置底层插件:重启后➡️XR Plugin Managerment下方多了两个选项:openXR和Project Validation➡️点击电脑端选项➡️勾选openXR,通过PC串流端进行调试,在电脑端运行,在眼镜端显示,直接查看编辑面板的状态变化
  5. 修复:安卓端有红色报错,PC端有黄色警告➡️点击安卓➡️点击Project Validation ➡️点击Fix All自动修复➡️点击安卓➡️点击Project Validation ➡️点击Fix All自动修复
  6. 添加配置文件:点击安卓和PC端➡️点击Project Validation➡️ 点击Editor➡️Enabled Interaction Profiles添加与硬件设备兼容的交互配置文件(openXR为我们准备好的一些配置文件)【Meta Quest 3是Oculus Touch Controller Profile和Meta Queat Touch Pro Controller Profile自追踪手柄】
  7. 如果你想换一个平台进行开发,原先应用当中的交互功能也无需发生改变,只需要把程序适配到对应的硬件平台。

    勾选Meta Quest Support就会有黄色警告

urp导致的渲染警告

项目文件夹里找到Setting文件夹,点击这个配置文件的

鼠标右键 remove,把这个渲染特性移除掉

还有这个也移除掉。然后重新启动unity

相关推荐
在路上看风景16 分钟前
31. Unity 异步加载的底层细节
unity
天人合一peng2 小时前
Unity中做表头时像work中整个调整宽窄
unity
小李也疯狂14 小时前
Unity 中的立方体贴图(Cubemaps)
unity·游戏引擎·贴图·cubemap
牛掰是怎么形成的14 小时前
Unity材质贴图引用陷阱:包体暴涨真相
unity·材质·贴图
呆呆敲代码的小Y14 小时前
【Unity工具篇】| 超实用工具LuBan,快速上手使用
游戏·unity·游戏引擎·unity插件·luban·免费游戏·游戏配置表
EQ-雪梨蛋花汤14 小时前
【Unity优化】Unity多场景加载优化与资源释放完整指南:解决Additive加载卡顿、预热、卸载与内存释放问题
unity·游戏引擎
我的offer在哪里14 小时前
用 Unity 从 0 做一个「可以玩的」游戏,需要哪些步骤和流程
游戏·unity·游戏引擎
泡泡茶壶ᐇ15 小时前
Unity游戏开发入门指南:从零开始理解游戏引擎核心概念
unity·游戏引擎
YigAin16 小时前
Unity中的Lock,到底在锁什么,什么时候该用?
unity
Var_al17 小时前
抖小Unity WebGL分包命令行工具实践指南
unity·游戏引擎·webgl