VuforiaAR 教程
Vuforia AR不仅可以识别图片也可以识别三维物体
直接上步骤:
1)开发环境
unity2017直接集成了Vuforia AR开发环境,不过在安装时要选择此项,也可以后续去unity官网下载相关部分安装,如果之前版本的unity则需要下载sdk导入untiy,建议直接用2017
2)账号注册
官网注册https://developer.vuforia.com/targetmanager/licenseManager/licenseListing,然后点击develop,获取key,在点击targetManager进行识别目标设置。
3)生成识别数据
点击TargetManger下的Adddatabase就可以添加要识别的图片或者三维物体,然后下载网站生成的数据包(选择editor),导入unity,如果自定义三维物体则需要借助三维物体生成器。生成器在develop-tools-下点击Download Model Target Generator下载
4)环境搭载
在unity中首先删除原来camera,然后右键Vuforia/ArCamera,添加AR相机,添加ImageTarget(如果为三维物体则为Model target)。
unity中file-buildsettings-playersettings-xrsettings下勾选Vuforia ar support。在Hierarchy中选择ARCamera,在Vuforia Behaviour中open Vuforia configuration,添加之前生成的key。
在ImageTarget(如果为三维物体则为Model target)下选择识别的数据库,再在database选项下点击相关database并点击激活,同时在ImageTarget(ModelTarget)放置你要识别的物体,运行即可
Ps:在Imagetarget(modelTarget)的脚本DefaultTrackableEventHandler中可以对识别到目标、追踪目标等状态的事件设定,简单粗暴点儿可以直接复制此脚本,并更改脚本名称,然后重新OnTrackingFound和OnTrackingLost方法(也可复制脚本再修改,保留原版本脚本。建议重写一个脚本,此脚本继承DefaultTrackableEventHandler,然后重写虚方法)。
Pss: 可以通过VuforiaARController提供的实例对运行中事件进行注册,如下代码为刚启动事件注册
var vuforia = VuforiaARController.Instance; vuforia.RegisterVuforiaStartedCallback(()=> { CameraDevice.Instance.SetFocusMode(CameraDevice.FocusMode.FOCUS_MODE_CONTINUOUSAUTO); });