欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

使用虚幻4开发HoloLens的准备工作

程序员文章站 2022-06-04 19:49:31
...

我这边的开发环境是win10 16299和vs2017 HoloLens的系统是14393
HoloLens开发需要UWP,虚幻4官方不支持UWP,所以就需要自己编译微软提供的魔改版的虚幻4了
地址在这里:https://github.com/MICROSOFT-XBOX-ATG/MICROSOFT_UWP_UNREAL/tree/dev_MixedReality
注意是dev_MixedReality分支,clone下来的话要切换一下。同时必须是在GitHub上加入Epic的组织后才能看到源码。具体方法可查询如何获取虚幻4源码。
然后就和编译虚幻4源码一样的步骤了。
如果自己有*的话,在运行Setup.bat时推荐在运行前推荐修改一下,设置cmd的proxy,让下载速度快一些,如下:

set http_proxy=http://<你的server地址>:<开放的端口>

我用的ss,需要在ss图标上右键打开运行来自局域网的连接,然后如下:
使用虚幻4开发HoloLens的准备工作
这个目前在下载的最后有一个Xbox的什么sdk安装会报错,可以不用管他。
然后是运行 GenerateProjectFiles.bat 这样还是要注意,我的是vs2017,vs2015的具体情况不太清楚,可能是直接运行就好。vs2017需要在安装器中选上虚幻4 的installer,如下图:
使用虚幻4开发HoloLens的准备工作
然后在cmd里运行 不能直接打开
命令如下:

GenerateProjectFiles.bat -2017

否则会报错。
然后就是打开sln了。
配置为 Development Editor 和win64 以及启动项目为UE4,如下图
使用虚幻4开发HoloLens的准备工作
然后右键UE4 属性 如下图配置即可:
使用虚幻4开发HoloLens的准备工作
然后右键UE4 生即可,我这边CPU是i7 6770HQ,源码是放在移动硬盘里编译的,编译总共花了不到40分钟。
然后Ctrl+F5运行(就是开始执行(不调试))。
接下来的具体步骤可以看一下源码docs目录下的文档。

我就说一下两个微软在文档里没说的问题

  1. Windows Mixed Reality HMD和Windows Mixed Reality Spatial Input合并成Windows Mixed Reality了,所以找不到。
    使用虚幻4开发HoloLens的准备工作
  2. 至少需要安装14393的win10sdk

10月30更新:
目前虽然是可以部署上去了,但尝试了各种配置都还没办法运行,在GitHub上也看到了其他用户有这个问题,也有是用的非HoloLens的MR设备的,也都是在前几天提出的,所以这个问题可能是最新的代码的一个bug,只能先等官方的解答和回复。


11月4日更新
根据issue里官方人员的回答,无法运行的问题已解决。
对源码的修改如下
使用虚幻4开发HoloLens的准备工作
在WindowsMixedRealityHMD.cpp中修改第1202行为:

if (!UWindowsMixedRealityFunctionLibrary::IsWindowsHolographic())
{
    args->Camera->SetNearPlaneDistance(GNearClippingPlane / 100.0f);
}
else
{
    float minClipping = FMath::Max(0.3f, GNearClippingPlane / 100.0f);
    args->Camera->SetNearPlaneDistance(minClipping);
}

(官方人员说的是1067行,但根据最新代码实际为1202行)
实际运行截图如下:(从http://127.0.0.1:10080/Mrc.htm中获取的实时画面截图)
使用虚幻4开发HoloLens的准备工作

相关标签: hololens 虚幻4