https://github.com/microsoft/MixedReality-SpectatorView/tree/v1.1.0
下面根据官方教程和自己的实际经验来说明:
git clone https://github.com/your_github_name/你刚才新建的repository的名字.git

5. 在cmd中将路径切换到新建的本地文件夹下
6. 将MixedReality-SpectatorView代码基作为项目的子模块。在cmd中输入
https://github.com/microsoft/MixedReality-SpectatorView.git sv
MixedReality-SpectatorView工程项目分支,这里我们选择1.1.0i. git fetch origin release/1.1.0
ii. git checkout release/1.1.0
iii. git branch


在cmd中输入
sv\tools\Scripts\AddDependencies.bat -AssetPath "UnitySpectator\Assets" -SVPath "sv"
总之,这里都是相对路径,大家可以根据自己情况来。
现在,当您在 Unity 中重新打开项目时,第三视角相关文件夹应该出现在项目的 Assets 文件夹中。
我们选择的是基于QR Code的检测方式。这一步,我需要花点版面来填一下坑。

根据上图及相关链接:
QR APIs库 ,链接SpectatorView.WinRTExtensions.dll的 x86 Release 版本,并将关联的 dll 包含在您的 Unity 项目中。链接SpectatorView.Native.sln工程能够运行成功,并生成下面几个dll
DeckLink相关软件和SDK,下载链接dependencies.props文件,换一下 DeckLink的头文件

Elgato Capture Card相关库。具体方法为:新建一个文件夹,将cmd的路径切换至这个文件夹下;输入:git clone https://github.com/elgatosf/gamecapture
然后再打开上面的dependencies.props文件,改一下Elgato的路径

7. 安装Opencv,简直是巨坑,如果没卡在这里真的是太幸福了。
git clone https://github.com/Microsoft/vcpkgcmd还是在Vcpkg文件夹下的路径,依次输入:
.\vcpkg install protobuf:x86-windows
.\vcpkg install opencv[contrib]:x86-uwp --recurse
.\vcpkg install opencv[contrib]:x64-windows --recurse
……………………………………………………分割线……………………………………………………………………
进行到第二步x86-uwp的时候报错(如果没报错就跳过 分割线中内容):

解决方案:
https://github.com/microsoft/MixedReality-SpectatorView/issues/464
Your_path\vcpkg\buildtrees\tiff\src\vX.X.X-xxxxxxxxx.clean\文件夹下git init .
git add .
git commit -m “temp”
注意:前两条注意 点 前面的空格。我是加了空格,不知道不加行不行。
Your path\vcpkg\buildtrees\tiff\src\vX.XX-xxxxxxxxx.clean\libtiff\ 文件夹并在文本编辑器中打开 tif_win32.c。注意:cmd先别关。
在第 280 行删除这段代码:
fd = (thandle_t)CreateFileA(name, (m == O_RDONLY)?GENERIC_READ:(GENERIC_READ | GENERIC_WRITE), FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, dwMode, (m == O_RDONLY)?FILE_ATTRIBUTE_READONLY:FILE_ATTRIBUTE_NORMAL, NULL);
替换为:
#if (_WIN32_WINNT >= _WIN32_WINNT_WIN8)
fd = (thandle_t)CreateFile2(name, (m == O_RDONLY)?GENERIC_READ:(GENERIC_READ | GENERIC_WRITE), FILE_SHARE_READ | FILE_SHARE_WRITE, dwMode, NULL);
#else
fd = (thandle_t)CreateFileA(name, (m == O_RDONLY)?GENERIC_READ:(GENERIC_READ|GENERIC_WRITE), FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, dwMode, (m == O_RDONLY)?FILE_ATTRIBUTE_READONLY:FILE_ATTRIBUTE_NORMAL, NULL);
#endif
在第 330行删除这段代码:
fd = (thandle_t)CreateFileW(name, (m == O_RDONLY)?GENERIC_READ:(GENERIC_READ|GENERIC_WRITE), FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, dwMode, (m == O_RDONLY)?FILE_ATTRIBUTE_READONLY:FILE_ATTRIBUTE_NORMAL, NULL);
替换为:
#if (_WIN32_WINNT >= _WIN32_WINNT_WIN8)
fd = (thandle_t)CreateFile2(name, (m == O_RDONLY)?GENERIC_READ:(GENERIC_READ | GENERIC_WRITE), FILE_SHARE_READ | FILE_SHARE_WRITE, dwMode, NULL);
#else
fd = (thandle_t)CreateFileW(name, (m == O_RDONLY)?GENERIC_READ:(GENERIC_READ|GENERIC_WRITE), FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, dwMode, (m == O_RDONLY)?FILE_ATTRIBUTE_READONLY:FILE_ATTRIBUTE_NORMAL, NULL);
#endif
保存文件并关闭它。
git diff --ignore-space-at-eol --output Fix_UWP_Tiff.patch
现在我们的 vX.XX-xxxxxxxxx.clean 文件夹中应该有一个 Fix_UWP_Tiff.patch 文件。将此文件移动到Your path\vcpkg\ports\tiff\
我们打开同一文件夹中的“portfile.cmake”,在Fix_UWP_Tiff.patch第12行的“FindCMath.patch”之后添加,保存。

在vcpkg文件夹路径中重新执行.\vcpkg install opencv[contrib]:x86-uwp --recurse。
解决完这个问题后,tiff是没有问题了,但是又出现别的问题了。
报错:
error: building opencv4:x86-uwp failed with: BUILD_FAILED

往上翻,我的原因是无法访问raw.githubusercontent.com网站,导致无法下载相关Opencv的库
解决方案:
https://blog.csdn.net/u012782078/article/details/106109620?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2defaultCTRLISTdefault-2.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2defaultCTRLISTdefault-2.no_search_link
打开https://www.ipaddress.com查一下raw.githubusercontent.com的ipv4地址
使用管理员权限打开C:/Windows/System32/中的hosts文件。我的路径是:

添加一行
199.232.68.133 raw.githubusercontent.com
注意:199.232.68.133是我查到的地址,大家最好再确认一下。
保存并关闭。重新在cmd中执行.\vcpkg install opencv[contrib]:x86-uwp --recurse。
……………………………………………………分割线……………………………………………………………………
接分割线上面的第7步(安装Opencv)
8. 生成dll
Your_path/sv/src/SpectatorView.Native/SpectatorView.Native.sln
_WCHAR_T_SIZE的定义而报错:
#define _WCHAR_T_SIZE 2就好了YourPath\sv\tools\Scripts文件夹,使用管理员模式运行CopyPluginsToUnity.bat。
sv路径\src\SpectatorView.Unity\Assets\SpectatorView.Native\Plugins里面就有相应的dll了。未完待续~