作者简介:一位喜欢写作,计科专业的大二菜鸟
个人主页:starry陆离
首发日期:2022年5月7日星期六
订阅专栏:ARFoundation
如果文章有帮到你的话记得点赞+收藏支持一下哦
之前寒假因为参加服务外包比赛,需要学习AR开发的知识,所以边学习边做笔记发布在csdn,但是最终烂尾了,自己赶开发进度,就没管这个栏目的笔记了,现在回过头来重新整理,有一些新的心得会更新在其中,同时也调整了一下排版,同样对AR开发感兴趣的友友可以点个关注鸭
笔记会更侧重操作,会穿插一些理论的研究,但笔者能力有限,无法深究,欢迎大佬加入,指点一二
本笔记基于windows平台,使用Unity软件ARFoundation开发工具包开发安卓移动APP中AR看车功能系统
开发工具版本:
Windows10
Unity Hub 2.5.5
Unity2020.3.25f1c1(LTS)
1.技术博客:汪祥春老师的ARCore之路/ARFoundation之路
(CSDN)2.ARCore官方文档
3.Unity官方文档
刚开始学的时候,完全不知道AR怎么开发,所以在网上了解了目前AR开发常用的开发工具包,最终我们选择使用ARFoundation开发Android端的AR模块
AR有手机端,眼镜端和网页端
1 平面识别类(ex.王者荣耀模型) 基础性功能 大部分都可实现
2 模型识别类(ex. 保时捷换色)
3 图片识别类 (ex.卡牌 书籍)大部分都可实现
4 AR导航 使用AR云 云锚点 储存当前场景的特点(ex. Cyberverse)
5 人脸检测技术 大部分都有
6 Web AR
7 实时光照与反射
8 Apple 另有动作捕捉等高端技术
ARKit(苹果) ARCore(安卓)
实现:官方SDK(资料少;需要熟悉资料;可以调用UI组件); Unity(比较推荐,入门门槛低)
SenseAR(商汤科技)
优点:免费;有云锚点;有手指动作捕捉;人脸识别支持机型比ARCore丰富;满足硬件即可
缺点:仅支持安卓系统;识别方面不太成熟
华为AR
华为手机不支持ARCore(原因:与谷歌竞争)
优点:免费
缺点:资料少;开发不方便
Vuforia
优点:可以实现识别类以及虚拟点击等功能;图片识别和模型识别非常强大;稳定
缺点:贵(去水印需要20-30万);平面检测能力很弱
EasyAR(视+)
优点:云锚点非常好;多见于大屏AR,小程序AR和导航
缺点:去水印收费
Void AR(太虚AR)
优点:SLAM效果全国领先,可与Vuforia抗衡
缺点:去水印收费
AR.js
是坑: 功能弱;兼容性差;需要很多技术:javascript+Wed3D等
KIVICUBE(成都 弥知科技)
优点:免费;开发简单;小程序领先
缺点:改域名
微软:MRTK
联想,晨星,Rokid,凉风台等国内AR头显:官方SDK
ARFoundation: 不是底层技术,是一个开发工具集,是封装。它将ARKit ARCore SenseAR集合,只用使用一个API
优点:上手快
缺点:比官方发布要晚一点
安装好Hub后——》打开Hub——》更改安装位置
激活许可证,按如下勾选,点击完成
选择安装——》点击右上角安装——》添加Unity版本——》可以直接下推荐版本(比如我下的推荐版本是Unity2020.3.25f1c1(LTS)
选择好后点击下一步——》语言选择简体中文——》勾选Android Build Support(因为我目前只创建安卓项目,所以暂时不选其他模块)——》点下一步就是漫长的下载安装过程
安装好了应该是这个样子,如果没有这个安装的小图标则说明忘记添加安卓模块
创建好了第一个项目,可以发现开发面板一片英文啊,这可怎么办!!!没事我们慢慢学,可能有友友希望弄成中文的,但不建议这样,因为国内网上关于AR开发的资料,基本是要看官方文档和权威书籍的,这些的开发面板都是英文的,所以花一周左右的时间就会适应了,而且还能学一些六级词汇,岂不乐哉
这里贴一下ARCore的官方文档,我们的项目最终是部署在Android系统上,所以采用ARCore开发包,记得收藏啊
如何配置Android开发环境和创建第一个Demo