下载和安装
Epic提供了Unreal引擎的二进制程序和原代码。Google在github上fork了Unreal引擎的代码,并添加了GoogleVR的最新特性进去。Epic原生支持GoogleVR,但Epic发布的Unreal引擎目前还缺少一部分构建DayDream应用所需的特性,所以我们应该从Google的github仓库下载源码自己编译。
- 获取Epic的github仓库的访问权限。Google的仓库fork自Epic,也需要先获取Epic的权限才能访问。按照说明在Unrealengine账户中添加了github账号后,相应的github账号会收到加入Epic Games组织的邀请,加入之后就可以访问Unreal引擎的源码了。
- 从Google仓库克隆或者下载4.13-googlevr
分支的源码。 - 安装Visual Studio 2015,注意要安装Windows 8.1 SDK。
- 运行源码根目录下的Setup脚本,以下载依赖的文件(Windows选择Setup.bat,Mac选择Setup.command,Linux选择Setup.sh)。
- 参考Epic的文档Building Unreal Engine from Source编译源码,在开始之前先选择操作系统,会呈现相应系统下编译的文档。编完之后,生成的可执行程序在Engine\Binaries\Win64目录下
- 参考Epic的文档安装Android开发环境。已经有Android SDK的,只看文档最前面的那句话就行了。
编译过程中遇到的坑:
- Epic的文档中没有提到要先运行Setup脚本。我直接运行GenerateProjectFiles脚本,会提示缺少文件。
- 执行Setup脚本时,里面有个文件路径太长,下载的时候出现PathTooLongException错误。原因是文件名称本身就很长,再加上我的源码目录放得比较深,导致路径过长。解决方案是,把源码目录的路径改短一点。
- 运行GenerateProjectFiles脚本时,提示需要安装Windows SDK v8.1。可以在安装Visual Studio2015时安装Windows SDK,如果已经安装了Visual Studio2015,也可以用Visual Studio2015的安装器安装Windows SDK。
- 一开始直接用Windows SDK v8.1安装器安装,但是安装器下载文件时,出现错误,提示Unable to verify the integrity of downloaded content。改用Visual Studio的安装器安装Windows SDK。
- 编译源码时,在编译UE4Editor-GoogleVRController.dll时,出现LNK2019的错误。UE4Edtitor.exe已经编译完成,但是由于缺少dll无法运行。原因是Engine/Source/ThirdParty/GoogleVR/lib目录下的一些库文件被修改了,还原之后,再编译就没问题了。
创建一个GoogleVR应用
Unreal引擎的编辑器编译好了,开始做一个GoogleVR的Demo。编辑器里面带有教程,可以在右上角点击学士帽图标打开。这个教程是类似软件新手引导那种形式的,用文字说明配合绿色方框指示,可以非常方便快捷地学习Unreal编辑器的使用。接下来根据Epic的Google VR Quick Start文档创建一个GoogleVR应用。
遇到的坑:
- 配置工程属性时,在Platforms的Android中,按下APKPackaging部分的Configure Now按钮时,一直提示无法覆盖项目属性文件。解决方案:手动创建了那个project.properties文件,路径可以在鼠标移上去时看到。
- 准备打包时提示Android开发环境没配置好,发现是没有配置ant的位置。在项目设置-平台-AndroidSDK里面配置一下AndroidSDK、NDK、Ant、JAVA的位置。如果不配的话,会到相应的环境变量里面找,鼠标移上去可以看到是哪个环境变量。
- 设置好工程,打包的时候又遇到问题,一大堆的undefined reference。