最近在学unity的途中,突然想试试AR的效果。想自己从零开始几乎不可能,好在网上已经有许多第三方的插件已经帮我们完成了几乎所有工作,我们只要上传一张所要识别的图片和显示的模型就可以了。国外比较出名的是”vuforia“,国内的话有免费的”easyAR“.然后以下vuforia在unity中的最基本的使用,不是深入学习。
1. 要用vuforia,首先要在vuforia注册账号,然后下载最基本的sdk,选择down for unity(在接下来的uinty工程中会用到)
sdk下载
2. 新建一个unity工程,将刚才的sdk package导入工程。导入后将场景中原来的camera删除,light也可一并删除。然后在vuforia/prefabs下找到ARcamera和imagetarge,分别拖入场景中。因为我们的demo是识别一张图片后显示模型。
3. 因为使用的是别人的产品,所以需要注册一个license(最好每个项目使用不同的License)(在官网的develop选择里面)。
注册好后把license填入场景中ARCamera的license处就算验证完成了。
4. 现在开始准备要识别的图片。首先去官网创建一个database
点开新建的database去新增一个图片目标addtarget,width写1就好,name随意(最好有4星以上的识别度)。新增好后,点击downlaoddatabaseall,unityeditor.之后我们就又有一个对应识别图片的package了。
5. 将目标图片的package导入uinty项目后,在场景中的imagetarget中设置data和image
在ARcamera中将dataset和active打钩
6. 在scene视图中,找到刚刚的图片,并把要显示的模型放置到场景中,并作为imagetarget的子物体。
这时候你可能会发现在game视图是一片漆黑。没有关系,这只是因为图片太小了,在game视图显示成了一个小点,这并不影响之后的识别效果。
7. 一切准备搞定,选择build项目(请先自行配置好android的sdk路径)。
如果出现”company name…“报错,只要把工程名和项目按要求写好就行了。
8. 在手机上安装你的apk,打开后识别图片就可以看到期待已久的AR效果啦。
9. 期间如果还有其他报错,可以参考此文章
第一次用c博客,操作不是很熟悉。。排版怪怪的。。。