C#教程
就大概列下自己看过的吧,也就了解一下基础:
先mark几个网站吧:
关于AR
增强现实技术(Augmented Reality,简称 AR),是一种实时地计算摄影机影像的位置及角度并加上相应图像、视频、3D模型的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。
AR系统具有三个突出的特点:①真实世界和虚拟的信息集成;②具有实时交互性;③是在三维尺度空间中增添定位虚拟物体。
放些我见过的惊世骇俗的AR效果:
AR打斗场景.
塔防游戏
当然我是不会做的,我这篇文章主要记录一下对于AR这块儿的探索,以及过程中的一些坑。最下面提供一个简易Demo。
国内的几个比较好的SDK
如何将Unity导出的项目植入到原有的iOS工程中
一路走一路坑,提供参考过的一些链接,慢慢来嘛:
Unity和iOS原生界面交互示例
这里有个英文教程,跟上面的基本一样的:Integrating Unity3D with native iOS application for Xcode 7 & Unity 5来自这个人
iOS - 将Unity导出的Xcode工程导入到另一个Xcode项目, 及常见报错的解决方法
Unity Vuforia 项目与原生iOS项目融合
Unity3D integration with UIView
unity 整合到原生iOS项目(swift 2.3)
unity3D与iOS原生工程项目合并以及合并过程中的问题
关于无法编译成功的问题
- 要保证你在真机上运行
- 要将EnableTestablibility 设置为NO 我这里用的HiAR,参见这里
OC 和C#的相互调用
目前来看,Unity如果要调用iOS项目中的方法的话,只能调用全局方法,或者C、C++的全局方法,我目前这么认为(我自己的测试结果是,如果想调用某个对象方法的话,至少需要创建一个单例对象,将我们需要调用的对象挂载上来即可实现)。
至于如何调用可以参考这里:Unity与iOS原生代码之间的相互调用和这里:官网的文档
思考
- 目前看来导入的的UNITY一开始就运行了,这将占用大量的资源,必须要禁止啊。(暂且调用.pasued方法,即可暂停Unity,仍会有小部分消耗)
- 另一个问题是如何让弹出的UNITY的Button点击做更多的事情,以及和iOS原生的方法进行交互,我要在识别到的时候拿到数据,并且点击button之后直接切换页面做其他的事情。(在Unity中可以通过对UGUI中的Button添加自定义事件,可以设置自定义方法,甚至是调用我们iOS项目中的方法哦)
- 摄像头翻转的问题,不明白为什么UNITY的工程导出到iOS上面摄像头就翻转了。(HiAR的兼容问题,这个demo学习的时候HiAR推荐使用5.0-5.4的unity,而我用的5.6,我的Demo里面就没再改动了,所以摄像头是反的哈)
题外话
Unity的跨平台能力是真的牛叉,简直逆天了。膜拜膜拜!
Unity3D将来时:IL2CPP(上)
这里是个简单的Demo~ AR集福
由于两个.a文件过大,你可以在[盘链接:密码: r243] 找到