Vuforia学习小结
原创
©著作权归作者所有:来自51CTO博客作者生活在他方的原创作品,请联系作者获取转载授权,否则将追究法律责任
基本内容
官网地址:https://developer.vuforia.com/
当前版本:8.1.0
版本和功能
数据来源导入
结构
Vuforia已经集成成为Unity的功能组件,基本功能都可以在菜单里点击。
Key需要输入在“Vuforia Configuration”里
添加“ARCamera”
图片识别、方块识别、柱体识别、物体识别、模型识别
识别后的控制
using UnityEngine;
public class VuforiaTrackableEventHandler : DefaultTrackableEventHandler
{
protected override void Start () {
base.Start();
}
/// <summary>
/// 发现识别象
/// </summary>
protected override void OnTrackingFound()
{
base.OnTrackingFound();
Debug.Log(mTrackableBehaviour.TrackableName + "...>>>");
}
/// <summary>
/// 识别对象丢失
/// </summary>
protected override void OnTrackingLost()
{
base.OnTrackingLost();
Debug.Log(mTrackableBehaviour.TrackableName + "...>>>");
}
}
平面认知
视频播放
Vuforia的视频播放已经改由Unity自己的Video组件实现播放。
虚拟按钮
using UnityEngine;
using Vuforia;
public class VirtualButtonEventHandler : MonoBehaviour,IVirtualButtonEventHandler {
/// <summary>
/// 虚拟按钮行为类
/// </summary>
VirtualButtonBehaviour virtualButtonBehaviour;
void Start()
{
virtualButtonBehaviour = GetComponent<VirtualButtonBehaviour>();
virtualButtonBehaviour.RegisterEventHandler(this); //注册事件
}
/// <summary>
/// 当虚拟按钮被挡住
/// </summary>
/// <param name="vb">虚拟按钮行为类</param>
public void OnButtonPressed(VirtualButtonBehaviour vb)
{
Debug.Log("OnButtonPressed: " + vb.VirtualButtonName);
}
/// <summary>
/// 当虚拟按钮遮挡离开
/// </summary>
/// <param name="vb">虚拟按钮行为类</param>
public void OnButtonReleased(VirtualButtonBehaviour vb)
{
Debug.Log("OnButtonReleased: " + vb.VirtualButtonName);
}
}
关于 Vuforia Object Scanner
- 尽可能选取表面简单,但是有很多花纹图案的物体。因为,Vuforia物体识别本质上是图片识别。
- 物体识别大小要适中。
- 扫描的时候,要在光线明亮,背景单一的地方。参考下面官方给出的图片。