我的前两篇文章讲述的最基本的Android和iOS与Unity交互的基础,据此使用此方法在Unity上进行二次开发,不管是对接三方SDK,还是使用Android原生或者iOS原生高效的UI系统,都是可以实现的,这样既发挥了Unity在3D游戏引擎上的跨平台巨大优势,也可以针对Unity目前UI性能差等进行原生开发,做到取长补短,从而提升产品的表现力,提升留存。目前本公司开发的3D涂色游戏Voxel就使用了目前这种混合开发的思路(Apple Store和Google Play搜索关键字Voxel,下载量最多的就是本家产品),列表面使用了Android和iOS高效美观的原生RecycleView,涂色面使用了Unity的内核进行用户交互,使用Android,iOS难以实现的3D技术,例子特效技术,高清渲染管线技术,提升用户在玩的感受!另外,原生端也实现了一套变现代码,通过Android和iOS端具体实现,Unity只负责上层调用,接收原生回调进行逻辑分发。大大提升了移动平台的高度拓展性!
不过,前两篇文章都是以Java,Object-C源代码的方式进行集成的。这样,像常用的广告变现,IAP服务器验证,通用工具类等项目必备的功能模块,移植性就很差了,需要手动的将代码粘贴复制到新的项目中,进行繁杂的对接任务,根据轻休闲游戏短平快的特征,与短平快背离,虽然效果提升了,但是工具量也上升了。
此时高级两字就体现出意义了,经过本人长达半年在Android iOS端的研究,总结了一下Unity工作流程