你的浏览器不支持canvas

让我们携手共创奇迹!

VR打包

Date: Author: LBD

本文章采用 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议 进行许可。转载请注明来自WindCrazy

这是随手记得,很杂,在做的过程中一直改,还未整理,仅供参考

很杂,我在做的过程中一直改,还未整理,仅供参考

在UE5.0里面开发quest,Pico VR应用

\0. 各种参考视频

https://www.youtube.com/watch?v=DiGh6MxDFds (quest)

https://www.youtube.com/watch?v=TXQhGjVZJ-8 (quest)

https://www.youtube.com/watch?v=33PcwfucDoE (pico4)

https://www.youtube.com/watch?v=Asw4C51RH9I (windows+ar)

https://docs.unrealengine.com/5.1/en-US/how-to-set-up-android-sdk-and-ndk-for-your-unreal-engine-development-environment/ (Android SDK and NDK)

1.开发环境配置教程(比较细)推荐- for quest2

https://www.youtube.com/watch?v=IBjBrHAg2Ek

1.0 Virtualstudio IDE开发环境 下载链接,选择2022 community (官方推荐版本)

https://visualstudio.microsoft.com/

然后添加Game player with C++ 模块即可

1.1 Java se development kit 8u77 (官方推荐版本)

https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html

注意安装后要编辑环境变量,搜索框里面输入environment.

1.2 Android studio下载链接 (用最新版本即可)

https://developer.android.com/studio/archive

安装的时候disable virtual device

SDK Platform里面增加Android 6.0 , 7.1.1,10、11、12

SDK Tools里面Build tool增加32,31,30,29,25,23. 注意不要选有rc的版本

NDK里面增加21 (官方推荐版本)5.0以前,以后就是25

进入C:\Users\hp\AppData\Local\Android\Sdk\build-tools\31.0.0 里面修改d8.bat为dx.bat

进入lib子文件夹修改d8.jar为dx.jar.

同样的事情对32.0.0再做一遍

注意command line tools,也要下载安装一下

如果下载碰到问题,可以使用下列镜像网站

中国科学院开源协会镜像站地址:

IPV4/IPV6: http://mirrors.opencas.cn 端口:80

IPV4/IPV6: http://mirrors.opencas.org 端口:80

IPV4/IPV6: http://mirrors.opencas.ac.cn 端口:80

上海GDG镜像服务器地址:

http://sdk.gdgshanghai.com 端口:8000

北京化工大学镜像服务器地址:

IPv4: http://ubuntu.buct.edu.cn/ 端口:80

IPv4: http://ubuntu.buct.cn/ 端口:80

IPv6: http://ubuntu.buct6.edu.cn/ 端口:80

大连东软信息学院镜像服务器地址:

http://mirrors.neusoft.edu.cn 端口:80

1.3 接下来设置dotnet环境

https://www.youtube.com/watch?v=EoIdyhjW9e0 (training video)

https://www.codeprofessionally.com/sdk-not-setup-ue5/

https://www.codeprofessionally.com/dotnet-is-not-recognized-as-an-internal-or-external-command-ue5/

https://developer.microsoft.com/en-us/windows/downloads/windows-sdk/ (windows sdk -这里应该不需要)

https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/sdk-3.1.424-windows-x64-installer (.net core 3.1 sdk)

https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/runtime-desktop-3.1.31-windows-x64-installer?cid=getdotnetcore (.net core 3.1 desktop runtime)

1.4进入UE5.0, Project Settings,Platforms, Android SDK里面修改参数

C:/Users/hp/AppData/Local/Android/Sdk

C:/Users/hp/AppData/Local/Android/Sdk/ndk/21.4.7075529

C:/Program Files/Java/jdk1.8.0_77

SDK API Level—latest或者matchndk

NDK API Level—Android-21

UE5.3 (UE5.2后这个配置切换到Android-25)

Android Studio Version: Flamingo 2022.2.1 Patch 2 May 24, 2023

Android SDK:

推荐版本:SDK 33

通过编译要求的最低版本:SDK 30

能在设备上发布所需的最低目标SDK版本:26

不同商城对于目标SDK最低版本的要求是不同的,可能与上文有所不同。

NDK版本:r25b

编译工具:33.0.1

Java运行时:OpenJDK 17.0.6 2023-01-17

要进行AGDE调试,需要AGDE v23.1.82+

UE版本 Android Studio版本 最低Android SDK版本 Android NDK版本 备注
5.3 Flamingo 2022.2.1 Patch 2 2023年5月24日 SDK 33 NDK r25b  
5.1-5.2 Android Studio 4.0 推荐版本:SDK 32 最低版本:SDK 30 NDK r25b 虽然在系统中编译最低需要SDK 30,但是对于要发布项目的目标设备最低可以使用SDK 26。
5.0 Android Studio 4.0 SDK 23 NDK r21e 使用Android文件服务器(AFS)所需的最低SDK版本是26。

1.5如果以上步骤全部配置正确但还是发现这个android的按钮是三角报错的情况,就需要运行一下自动配置脚本了,位置在C:\Program Files\Epic Games\UE_5.0\Engine\Extras\Android, SetupAndroid.bat跑一遍

1.6 VR Android应用打包前一定要检查以下选项

Project Settings(项目设置)中:

Start in VR(以VR启动)要勾选;

Package for Oculus Mobile devices()要添加两组元素

Plugins(插件)中:

要确保Oculus VR和Open XR已打开

两个推荐配置

Full rebuild

Package game data inside apk.

\2. 程序打包过程

2.1第一个必要的步骤是verify引擎版本,因为平时使用中有可能已经破坏了引擎文件的基本结构,或者是某些插件破坏了,这样打包时会有一些莫名报错很难解。

2.2去掉不必要的插件,如iclone的RLL.Link. 这个打包时会报错。可能还有一些其它插件随机应变。

2.3删除这两个文件夹,去掉历史文件信息

\3. Quest2环境设置

3.1基本的流程为一定要把账号提前注册为开发者账号(注意有一步最后的确认一定要点)

3.2调试开始前先准备好网络,需要在电脑上安装quest助手才能让头显和手机登录到互联网。

3.3quest启动联网后,需要更新一下系统到最新版本、另外里面账户访问的浏览器也需要更新到最新版本、否则在quest眼镜里面切换账号登录的时候永远不成功。因为登录的账号是开发者账号,登陆后就自然激活开发者模式了。

3.4准备好一个手机、iphone或者有google play商店的,安装quest go应用,安装后登录账号。

3.5在quest登录账号的过程中有一个8位的验证码,手抄下来后使用手机浏览器登录www.meta.com/device. 进入后输入就可以帮助这个眼镜完成和账号绑定的过程。如果头显以前登录过其它账号,则需要运行出场重制过程,power加音量减 长按。

3.6在手机quest应用里面启动go应用,然后在设备里面尝试发现头显

3.7发现后用手机app设置头显为开发者模式

3.8 Quest link software 下载链接,用于有线或者无线连接quest设备

https://www.meta.com/quest/setup/?utm_source=l.facebook.com&utm_medium=questredirect

\4. 应用安装

针对quest Quest 2

基本的方法是使用sidequest或者MQDH这两个软件来安装apk到头显。

4.1 SideQuest设置:先点击Connect连接,连接成功后选ip设备,然后断开USB连接就可以了

4.2 Meta Quest Developer Hub设置:里面我们也可以看到相应的设置,但是ADB over Wifi似乎只能关闭不能开启,这点没有Side Quest方便。

如需详细了解MQDH的使用方法,可以仔细阅读下面链接里面内容

https://developer.quest.com/documentation/unity/ts-odh/#connect-to-odh

Pico的环境配置很不一样,所以单列一篇

PICO4 SDK下载链接

https://developer-global.pico-interactive.com/sdk?deviceId=1&platformId=2&itemId=7140300670292312069

进入配置PICO4分支了:

project setting详细配置步骤

进入project setting->platform->android里面选择

删除quest apk

修改sdk版本为双19

修改andriod sdk 从latest修改为matchndk. 另外版本从21修改为19

plugin 详细配置步骤

取消quest vr和open xr

5.3 回到Project setting进行详细的input映射设定

后续注册步骤

Android配置里面,注意勾选remove quest signature files from distribution apk.

接下来生成key store

https://www.codeprofessionally.com/unreal-engine-packaging-for-android-to-any-unreal-engine-version/

注意一定要用管理员启动cmd,要不结果无法保存

C:/Program Files/Java/jdk1.8.0_77/bin/ >keytool -genkey -v -keystore key.keystore -alias Mykey -keyalg RSA -keysize 2048 -validity 10000

然后输入口令:123456(可以自定义)

然后输入一系列的信息,最后一定要用y输入确认

把生成的key拷贝到ue工程路径下

C:\Users\hp\Documents\Unreal Projects\自己的工程名\Build\Android

偶尔碰到过gradle环境紊乱的问题,请参考这个链接里面的配置进行对应、另外注意重新匹配环境的时候一定要对C:\Users\hp.gradle .android \AndriodStudioProjects 这三个文件夹开启写权限、另外在andriod studio的setting设置页面、图1. 以及strucute设置界面、图2进行相应设置。

[Android Gradle 插件版本说明     Android 开发者     Android Developers (google.cn)](https://developer.android.google.cn/studio/releases/gradle-plugin?hl=zh-cn)

二、打包超过2GB

在项目设置中的Platforms-Android里将Package game data inside .apk?设为falseAllow large OBB files设为true即可

如果超过4GB参考:UE打包安卓超过2G或者4G包的配置

三、VR出现彩色条纹闪烁或锯齿

打包后在PICO一体机中会出现像电视坏了一样的彩色条纹闪烁或特别模糊不清或特别大的锯齿,原因可能是PICO不支持过高分辨率,由于此打包内容有8k视频因此出现了此问题,降为6k视频后问题解决


对于本文内容有问题或建议的小伙伴,欢迎提出问题