方法一,如果有多個識別對象,在Update中循環識別對象數組,獲取TrackableBehaviour組件
foreach (var item in trackObjects) { var mTrackableBehaviour = item.GetComponent<Vuforia.TrackableBehaviour>(); if (mTrackableBehaviour != null && (int)mTrackableBehaviour.CurrentStatus>1) { if (mTrackableBehaviour.transform.name == "追蹤物體的Name") { } Debug.Log("追蹤的物體名字為:"+mTrackableBehaviour.Trackable.Name); break; } else { // } }
方法二,直接把代碼掛在識別對象上,判斷該對象是否被識別
var mTrackableBehaviour = GetComponent<Vuforia.TrackableBehaviour>(); if (mTrackableBehaviour != null && (int)mTrackableBehaviour.CurrentStatus>1) { if (mTrackableBehaviour.transform.name == "追蹤物體的Name") { } Debug.Log("追蹤的物體名字為:"+mTrackableBehaviour.Trackable.Name); break; }
識別對象狀態枚舉:
public enum Status { NOT_FOUND = -1, UNKNOWN = 0, UNDEFINED = 1, DETECTED = 2, TRACKED = 3, EXTENDED_TRACKED = 4, }
相關代碼 38樓:http://forum.unity3d.com/threads/help-with-vuforia-project.215147/