本人新手菜鸟,看了网上很多教程,希望把它记录下来作为自己的回顾和总结。本文纯属自娱自乐,如有大神请帮忙指点一下,蟹蟹~
配置环境
首先需要安装Unity软件,到官网下载安装文件,在安装过程中记得勾选iOS build support,这样可以将做好的功能打包到iOS平台进行测试,在安装过程中可以到官网上注册账号去。
进入Vuforia官网,注册并登陆账号,下载Vuforia for Unity安装包
点击Develop - Add License Key - 勾选 Development 并输入你的App Name - Next - 勾选认证后点Confirm,这样就创建了属于你工程的免费Key,可以点击进去查看完整的内容,是很重要的Vuforia SDK的功能接口。
再在二级菜单栏中找到Target Manager,这里放的是你的识别图,点击Add Database会出现三个选项:Device、Cloud、VuMark,分别对应的是将你的识别图放在App本地、云空间、或是使用Vuforia特定的识别图VuMark。这里我们选择最简单的Device,并输入数据库名称。
点击进入创建好的数据库,Add Target 添加识别图,出现以下界面。其中可以看出Vuforia究竟可以识别哪些物体:Single Image(图片)、Cuboid(立方体)、Cylinder(圆柱体)、3D Object(三维物体)。我们最常见的还是识别图片,点击Single Image,选择图片,宽度随意,200左右就可以了。
此处需要注意的是:
Vuforia只支持8位灰度或24位RGB的JPG和PNG格式图片, 不支持带Alpha通道的PNG图片,大小在2M以下。
此外,对于Vuforia来说,它识别的关键是图片内容特征点而不是坐标轴,因此选取的图片一定要有高识别度,即图片清晰、对比度高、没有重复图案。
创建完Target之后,点击 Download Database - Unity Editor,就可以把识别图打包成Unity所需的安装包,直接使用。
至此我们的环境配置基本完成,可以开始启动小船啦~
做一个简单的AR识别效果
打开Unity,新建项目,双击我们刚才在Vuforia官网上下载的两个Unitypackage(Vuforia for Unity和Database中的识别图),会自动将文件导入到Unity中,奏是这么轻松加愉快。
当中会弹出一个框框,点击:I Made a Backup,Go Ahead!
两个包包导入好了之后,在Project窗口找到Assets - Vuforia - Prefabs - ARCamera 和 ImageTarget,将两个拖入左边窗口Hierarchy中,删除Main Camera。
点击ARCamera - Inspector 窗口下的 Open Vuforia configuration,需要改动的地方有两个:
1、App License Key 填写你在Vuforia网站上获得的key
2、在Datasets下勾选Load *** Database 及 Activate。
完成后再看ImageTarget,这边需要载入你的Database 和Image Target。
此处可能会出现一个问题:Target上的图片没有贴图?
解决方法是找到Assets - Editor - ImageTargetTexture 下文件夹里的图片,在Texture Shape里面将Cube改为2D就可以了,它将照片设置成了立方体,但其实这个问题并不会妨碍摄像头识别。
接下去你可以右击ImageTarget,添加一个3D的球体或是立方体或是你想显示的模型,调整一下位置和大小,点击运行按钮,就可以看到啦~
当然因为我们用的是免费版的Vuforia,因此在界面中会绑定一个水印,只有买了商业版的才可以去掉哦。
在Xcode上试运行
点击File - BuildSetting(或快捷键Shift+Command+B),点击iOS - Switch Platform,转换之后点Player Setting,在右边的Inspector中找到这几个选项并修改:
Company要改掉,可以是任何你喜欢的单词,我改成Mily。
Strip Engine Code 勾选去掉。
点击Build保存,完成之后会自动弹出发布的iOS版Xcode文件,通过Xcode打开这个项目,此时运行,还是会有报错,需要做以下两件事:
1、登入你的开发者账号;
2、电脑连上你的iOS手机;(因为这个不能在手机模拟器中运行,必须在手机上跑)
做好这两步工作就没问题啦~
成功!!
有兴趣的可以试试看?可以把小球换成你想要的视频、3D模型,或者3D动画哦~