Hololens SpectatorView的应用

初始准备

1.Visual Studio2019。
2.WIndow10 SDK(10.0.18362.0)。
3.Unity2019。
4.Git。
5.NuGet。

Git设置

1.在GItHub上新建一个存储库,并将其在本地clone下来。如何创建?

git clone https://github.com/yourname/textsv.git

2.作为子模块引入MixedReality-SpectorView。

git submodule add https://github.com/microsoft/MixedReality-SpectatorView.git sv

3.检查确认分支为master

git branch

4.运行命令,等候时间稍长。

tools\scripts\CreateUnityPackage.bat

Azure Spatial Anchors设置

1.注册或登录Azure账户, Microsoft Azure主页。
2.点击创建资源,搜索Spatial Anchors(空间定位点),点击创建,参考文章。

创建资源.png

3.按下图填写信息。
新建Spatial Anchors账户.png

4.创建完成后,点击创建的资源组,选择左侧菜单栏的概述,可以查看账户ID,点击左侧菜单栏的访问密钥,可以查看主密钥。(Unity配置中需要用到)

账户ID.png
账户密钥.png

Unity设置

1.Unity打开SpectorView文件夹下Sample文件里的SpectatorView.Example.Unity
2.选择工具栏的Spectator View -> Edit Settings,勾选Broadcaster Settings组件下的Automatically Broadcast All Game Objects选项;添加组件Spatial Anchors Coordinate Localization Initializer;复制先前创建好的Spatial Anchors账户的账户ID和主密钥,填写下方的Account idAccount Key

SpectatorViewSettings.png
Hololens部分

1.打开File -> Build Settings,选择Universal Windows Platform,设置如下,点击Switch Platform。

Build Settings界面

2.选择PlayerSettings,在列表中选择Player -> Windows平台 -> XR Settings。勾选Virtual Reality Supported,在下方Virtual Reality SDKs处添加Windows Mixed Reality
XR Settings

3.打开File -> Build Settings,在Scene中添加Hololens场景,点击Build。

Scene.png

Visual Studio设置
1.打开Unity打包项目。
2.调试选择Debug模式x86架构,部署目标选择设备
3.第一次将应用从电脑部署到Hololens时,系统会提示输入目标设备PIN,进入Hololens设置中的Update and Security找到For Developers,点击Pair,将显示的PIN输入到电脑上。
4.选择调试 -> 开始调试。
5.戴上Hololens设备,在应用中找到示例项目,打开可以看到两个立方体与一个球体。

Android部分

1.打开File -> Build Settings,选择Android,设置如下,点击Switch Platform。

Android.png

2.选择PlayerSettings,在列表中选择XR Plug-in Management -> Android平台,勾选ARCore。(若此处没有该选项,打开Window -> Package Manager下载AR Core

ARCore设置.png

3.打开File -> Build Settings,在Scene中添加Hololens场景和Android场景,Android场景的序号为0,Hololens场景序号为1,点击Build后通过adb命令将apk安装到Android手机上。

AndroidScene.png

连接测试

1.先用Hololens打开项目,再用手机打开项目。
2.根据手机的提示输入Hololens的IP地址。(Hololens设置 -> 网络 -> 硬件属性 -> 查看IP地址
3.在Hololens上弹出的申请使用摄像头提示,点击确认。
4.使用Hololens扫描手机端的二维码,扫描成功后手机上便有了第三人称视角的项目。

可能会遇到的错误

1.在命令行运行“tools\scripts\CreateUnityPackage.bat”时,提示定位不到MSBuild.exe文件,但通过搜索这个文件是存在的。

Unable to locate MSBuild.exe
You can specify a -MSBuild variable specifying the path for MSBuild.exe if it isn't found at $MSBuildPath

解决办法:通过命令行报错提示的路径位置发现,默认寻找路径为Visual Studio的Enterprise版本,对“D:\Hololens\Spector\Spector\sv\tools\ci\scripts”路径下的buildNativeProjectLocal.ps1进行编辑,将路径中的Enterprise改为电脑的Visual Studio版本(Community)即可。

修改代码.png

2.在命令行运行“tools\scripts\CreateUnityPackage.bat”时,提示如下错误:

Warning: The following VS instances are excluded because the English language pack is unavailable.
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
Please install the English language pack.
No suitable Visual Studio instances were found


error3.png

解决办法:在Visual Studio Installer处安装英语语言包。

3.Unity中关于AR Kit的错误提示。

解决办法:在Package Manager里更新AR Kit的版本,可能是版本过旧导致。

4.Unity中关于QRCode的错误提示。

QRcode.png

解决办法:查找官方文档可知,在指定路径缺少QRCode.dll文件,找到文件,复制到官方指定路径。

官方有关QR Code的说明

找到的缺失的文件
将文件复制到指定位置

5.Unity中在构建安卓apk时出现的关于Gradle的错误提示。

Missing 'package' key attribute on element package at :arcore_client……。

解决办法:打开 Preferences -> External Tools 把Gradle的路径改为自己下载的Gradle路径,然后再打开Project Settings -> Player -> Android -> Publishing Settings,勾选Custom Main Gradle TemplateCustom Launcher Gradle Template后,在选项下面对应的路径的地方会各生成一个文件。
分别打开两个文件,在第一行注释下添加如下代码,然后保存即可。参考文章。

buildscript {
repositories {
google()
jcenter()
}
dependencies {
// Must be Android Gradle Plugin 3.6.0 or later. For a list of
// compatible Gradle versions refer to:
// https://developer.android.com/studio/releases/gradle-plugin
classpath 'com.android.tools.build:gradle:3.6.0'
}
}
allprojects {
repositories {
google()
jcenter()
flatDir {
dirs 'libs'
}
}
}

拓展(其他第三人称视角方式)

两台Hololens,参考文章1,参考文章2,

你可能感兴趣的:(Hololens SpectatorView的应用)