- 注册vuforia账号。
2.下载vuforiaSDK
导入unity就不赘述了。。。
3.获取key:
取个名字:
这里就是需要用到的key:
接下来上传识别图:
起个名字:
上传识别图:
客户端key:
将预制体拖入 Hierarchy:
此处填写key:
此处填写客户端key:
imagetaget参数修改位云识别:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Vuforia;
public class yunshibieceshi : MonoBehaviour, ICloudRecoEventHandler
{
private CloudRecoBehaviour mCloudRecoBehaviour;
private bool mIsScanning = false;
public ImageTargetBehaviour ImageTargetTemplate;
void Start()
{
mCloudRecoBehaviour = GetComponent<CloudRecoBehaviour>();
if (mCloudRecoBehaviour)
{
mCloudRecoBehaviour.RegisterEventHandler(this);
}
}
public void OnInitialized()
{
Debug.Log("初始化完成");
}
/// <param name="initError"></param>
public void OnInitError(TargetFinder.InitState initError)
{
Debug.Log("初始化失败 " + initError.ToString());
}
/// <summary>
/// 刷新失败
/// </summary>
/// <param name="updateError"></param>
public void OnUpdateError(TargetFinder.UpdateState updateError)
{
Debug.Log("Cloud Reco update error " + updateError.ToString());
}
/// <summary>
/// 状态变更开始识别
/// </summary>
/// <param name="scanning"></param>
public void OnStateChanged(bool scanning)
{
mIsScanning = scanning;
if (scanning)
{
Debug.Log("true");
ObjectTracker tracker = TrackerManager.Instance.GetTracker<ObjectTracker>();
tracker.TargetFinder.ClearTrackables(false);
}
}
/// <summary>
/// 识别成功
/// </summary>
/// <param name="targetSearchResult"></param>
public void OnNewSearchResult(TargetFinder.TargetSearchResult targetSearchResult)
{
Debug.Log(targetSearchResult.MetaData);
mCloudRecoBehaviour.CloudRecoEnabled = false;
// 加载识别后要显示物体
if (ImageTargetTemplate)
{
Debug.Log("Get Target");
ObjectTracker tracker = TrackerManager.Instance.GetTracker<ObjectTracker>();
ImageTargetBehaviour imageTargetBehaviour =
(ImageTargetBehaviour)tracker.TargetFinder.EnableTracking(
targetSearchResult, ImageTargetTemplate.gameObject);
}
}
}