最近拿到了一个需求,想要模拟器运行AR内容。。
正文如下:
1.尝试了很多,发现Unity打出的AR包(Data、Classes、Libraries)含有的这三个文件在项目工程中的话在模拟器运行会出现超出想象多的错误,所以决定把它们删除,只留下
这是成功的第一步
2.那么问题来了,原先引入UnityAppController类以及各个生命周期调用的函数还有UnityGetMainWindow()这种C++函数我们又该如何处理呢!还有一个顽固的main.mm文件
3.我们自己新建一个UnityAppController类,
实现Unity需要调用的各个生命周期的函数,我们的重点是xcode编译运行不报错,所以只需要简单的实现,我这边偷懒了除了返回bool的地方return YES其余都没做实现
PS:当然你也可以和我一样处理的严谨一点
这样可以确保真机和模拟器编译的是不同的东西
4.然后就是顽固的C++函数了,我这边的处理是这样的,仅供参考
这是实现,也要放在@end之后
5.结束了吗?没有,还需要处理一个main.mm文件,这里面只能全部替换啦,实在涉及的类和函数太多了,没必要一个个去实现。
注意:之后你想要用AR功能了,就把原先删除的Data、Libraries以及Classes文件恢复,把自己新建的类删除,最后main.mm文件替换回来即可
一直待更新.....