不管用不用MRTK都要先安装android studio主要是用JDK,SDK两个,(NDK不是必要的,不使用IL2CPP编译方法时可以不下载,本文使用的mono编译方法,在player setting中的other setting)。经证实unity2019.4只能配套使用不超过jdk1.8.0版本的JDK,而SDK可以随意。我先装了JDK11是android studio 2020.3配套的,填上后怎么都提示incompatiable,又专门装了一个JDK(见我的百度盘链接:https://pan.baidu.com/s/15k2eJh6IFt0ZE5KDOIHJvg 提取码:xmaj),edit菜单中的preferences设置如下:打勾的是unity默认的,不用管它。
这一点是好多教程里都没说的,我以前知道,他们没说,我还以为是不用这些配置了呢,后来经过多次失败才调试出来的。嗨,看来做啥还得弄的彻底完整一些,要不误人子弟。我用的unity2019.4.29f1c2和2021年9月新买的小米手机。
详细步骤如下:
1.新建工程,并切换到android平台
2.用MRTK工具导入com.microsoft.mixedreality.toolkit.foundation-2.5.4(项目不用关,自动更新)
3.在window菜单中的package manager中查看AR foundation 和ARCORE的版本,默认的是2.1.19,不用动。别人两个都用3.1.3也成功了,看来这里版本不要太高就行。
4. 点击mixed reality toolkit菜单中的add to scene,加入MRTK环境,此时原来的camera会自动进入MixedRealityPlayspace中
5.按官网的设置Hierarchy中的MixedRealityToolkit。
Click Add Camera Settings Provider and expand the newly added New camera settings entry
我的按官网的设置好如下:
同时把diagnostics禁掉
6.Update the MRTK UnityAR scripting defines by invoking the menu item: Mixed Reality > Toolkit > Utilities > UnityAR > Update Scripting Defines
7.场景中加入个cube 试试 (自己加载object manipulatior和nearinteraction grabble )
8.导出的other settings中的graphics APIs的第一项vulkan删掉,只用剩下OpenGLES3即可(老外视频里这么弄的,她成功了,咱就跟着来呗,不知为何,官网也没说,估计不删也行吧,欲练此功。。。)
其它的都默认就行,当时情况如下:
奇怪的是下图中的XR settings都不用选就行,选了也还是一样效果,我都试过了。
9.导出apk,build场景如下,一切默认(什么都不用选):
10.直接生成导出了apk文件,拷贝到手机里安装就是了。
手机运行如下,一个可以拖动的立方体: