之前一直尝试在Hololens2上使用Vuforia老是出现各种莫名其妙的问题,今天跑通了,记录下。
新建Unity工程
这一步没什么好说的,正常新建工程即可。
导入MRTK
这里我们使用微软的MixedRealityFeatureTool工具来导入MRTK。
- 下载MixedRealityFeatureTool工具
- 打开下载的工具(此软件反应较慢,耐心等待下)
刚打开Star按钮是灰色的,无法点击,等待片刻即正常。
- 点击Star,选择刚才建立的Unity工程目录,并点击Discover Features
- 软件会列出许多可安装的包,选择图中四项,点击Get Features
注意点击按钮之后软件即开始下载相关包,如果好久都没下载好的话尝试挂个梯子
- 这里提示需要添加依赖,不用在意,点击Import,在下一页面点击Approve
- 此时已完成导入,可关闭此软件,然后返回Unity等待包导入完成
- 导入完成后,会弹出如下配置框,选择第二项(OpenXR之前尝试过没成功不想试了)
- 点击Show settings-UWP Settings-Windows Mixed Reality
导入Vuforia Engine包
一般来说,直接使用Package Manager下载Vuforia包最为方便,但不知为何在我的包管理器中找不到Vuforia包,所以在网上下载了一个com.ptc.vuforia.engine-9.6.3。
- 如果使用包管理器,点击Window -> Package Manager -> Vuforia Engine AR,点击Install;
如果使用上面的链接,点击包管理器左上角的“+”号,选择Add package from tarball,然后找到刚下载的文件导入即可 - 导入完成后,如果再弹出MRTK Project Configurator对话框,直接关掉即可
Vuforia识别码生成和导入
这一步没什么可说的,唯一要注意的点就是在输入图片宽度的时候,其单位是m,此数值要和unity中image的scale、和最后你打印在纸上的vuforia码的大小一致。
从vuforia网站下载好识别码的包后,导入Unity。
Unity的相关配置
-
为场景配置MRTK
-
切换配置文件
-
为相机添加Vuforia Behaviour脚本
-
Open Vuforia Engin configuration,填写License Key(在官网);
-
左侧Hierachy面板,添加ImageTarget
-
选择你的vuforia database和识别码
-
这里好像unity2020版本的Scale并不会变成你在官网填的多少多少米,自己可以在旁边建一个标准立方体看看大小对不对
-
为Image添加一个子物体,调整大小方便观察
-
找到Edit-ProjectSetting-Playsetting-Publishsetting,在Capabilities列表中勾选你需要的功能:
InternetClient(通讯会用到)
InternetClientServer(通讯会用到)
WebCam(必须勾选)
Microphone(麦克风)
SpatialPerception(空间感知)
-
运行场景,使用摄像头测试vuforia是否可正常识别,正常识别则准备部署。
工程发布和部署
请参见这篇博文:HoloLens 2开发:三种工程部署方式