AR增强现实开发介绍(续)
---开发基础篇
开发增强现实技术,无论是商业级应用,还是面向幼儿教育的游戏产品,都需要从了解、获取、下载增强现实插件开始。目前全世界使用量最大公认最好的增强现实插件是高通的Vuforia。我们先从开发一个最简单的AR Hello World 开始。
开发一个AR Hello World 需要经历以下步骤:
1:登陆高通增强现实网站,注册账号且获取授权信息。
2:制作目标图
A) 二维识别图制作
B) 三维识别物体制作
3:SDK下载
4: Unity整合高通SDK,进行开发
5:发布移动端,测试评估最基本Demo效果
特别提示,以下教程为2016年10月份的网站状态(Vuforia 插件版本为6.0)
现在我们就针对以上五大步骤,来进行详细讲解。
一:登陆高通增强现实网站,注册账号且获取授权信息。
1.1 首先登陆 https://developer.vuforia.com/
1.3 输入个人信息,确认注册信息成功。然后会在注册使用的邮件中收到确认信息。
完成以上步骤,现在开始根据用户的不同,选择不同的授权信息。首先点击网站的Develop -->License Manger 选项。 点击下图的 “Add License Key”。
此时如果你是第一次登陆网站,则系统会弹出“选择项目类别”(Select your project type)的提示。 这个选择很简单,如果是学习者,选择第1个选项(Development); 如果是需要发布到App Store 的产品,则选择第2个选项(Consumer);如果是面向企业内部使用则选最后一个(Enterprise)。
此时出现如下图的页面,按照我们的开发目的进行选择。笔者此时选择“Development”选项。
选择完毕,出现确认信息页面,如下图。
选择“确认”(Confirm)后,出现如下页面,我们需要填写项目名称、设备类型(移动端、AR眼镜),点击下一步。
此时出现下图页面,我们刚才建立的选项数据,就以列表的形式,显示出来。我们点击“TestARDemo1”,查看我们的授权码。
授权码是一堆看似无意义的字母集合,我们拷贝这些内容,先临时进行存放,后面需要填写到Unity的项目工程中。
二:制作目标图
A) 二维识别图制作
B) 三维识别物体制作
现在我们得到授权码后,开始制作“目标图”(识别图)。点击“Target Manager” 页面,开始制作识别图。此时点击“增加库”(Add Database)。(如下图)
创建库(Create Database),例如库名称:TestAR_DB2. 选择不同的类型,我们选择1选项即可。表示使用移动设备存储“识别图”。Cloud 表示云识别(把识别图发往云端),VeMark 表示支持Win10 与微软的Holens 眼镜设备。
点击创建后,我们会得到一个“库”,专门存放我们上传的识别图。当我们给“库”中添加识别图的时候,我们需要选择不同的类型。如下图从左到右分别是二维识别图、几何识别图、3D物体识别图等。笔者选择Single Image (二维识别图),进行上传。
上传识别图,贴图必须有一定的画面复杂度,否则会造成识别不清晰的问题。下图中“左下角”与下图中间(带二维码)的贴图画面最为复杂,其实也是高通插件,识别最好的贴图。
上传完识别图后,我们可以看到如下图内容。"Rating" 就是可以识别贴图的级别(5星为最高),一般3颗星以下的贴图,是不能顺利完成识别图,建议不采用。
勾选具备高识别度的贴图,然后点击页面的“Download Database”下载库文件。(*.UnityPackage)
三:高通插件SDK下载
点击“Downloads”--〉SDK ,下载高通SDK。“vuforia-unity-6-0-117.unitypackage”
四: Unity整合高通SDK,进行开发
4.1: 新建Unity5.x 演示项目,导入AR SDK。
4.2: 导入识别图的库文件(*.unitypackage)
4.3: 在Unity系统中,删除原始摄像机,使用AR摄像机。(ARCamera)
4.4:层级视图添加“贴图目标(ImageTarget)
4.5 现在进行必要的设置:
A) AR Camera 对象所属“Vuforia Behaviour”脚本组件中的“App License Key”,需要粘贴“授权码”。
B) AR Camera 对象所属“Database Load Behaviour ”脚本勾选“Load xxx Database ”与下面的“Activate”。
C) 点击 ImageTarget ,在脚本组件“Image Target Behaviour”中的Database :选择“TestAR_DB1”,在ImageTarge:选择具体的识别图。
D) 在层级视图中,添加基本的3D模型,且作为"ImageTarget"的子节点。
E) 如果笔记本/PC带有摄像头,则运行游戏后系统会自动开摄像机,可以看到AR混合图像。
笔者机器没有安装摄像头,所以显示为红色背景。如果有的话,则系统会自动开启摄像机,拍摄真实环境与Unity的画面进行混合处理显示出来。
五:发布移动端,测试评估最基本Demo效果。
发布移动端与一般的Unity手游都是一样的,这里就简略过去。以下显示做好的部分AR Demo 项目截图。