AR如何動態加載模型資源並且將模型資源賦予某一個ImageTarget

根據跟蹤狀態實現相應功能

  • TrackableBehaviour.Status.DETECTED//檢測到
  • TrackableBehaviour.Status.EXTENDED_TRACKED//延伸跟蹤
  • TrackableBehaviour.Status.NOT_FOUND//未找到
  • TrackableBehaviour.Status.TRACKED//跟蹤中
  • TrackableBehaviour.Status.UNDEFINED//未定義的
  • TrackableBehaviour.Status.UNKNOWN//未知的




接下來是腳本

public class MyPrefabInstantiator : MonoBehaviour, ITrackableEventHandler

{

private TrackableBehaviour mTrackableBehaviour;

public Transform myModelPrefab;

// Use this for initialization

void Start ()

{

mTrackableBehaviour = GetComponent();

if (mTrackableBehaviour)

{

mTrackableBehaviour.RegisterTrackableEventHandler(this);

}

}


public void onTrackableStateChanged(

TrackableBehaviour.Status previousStatus,

TrackableBehaviour.Status newStatus)

{

if (newStatus == TrackableBehaviour.Status.DETECTED ||

newStatus == TrackableBehaviour.Status.TRACKED ||

newStatus == TrackableBehaviour.Status.EXTENDED_TRACKED)

{

onTrackingFound();

}

}

private void onTrackingFound()

{

if (myModelPrefab != null)

{

Transform myModelTrf = GameObject.Instantiate(myModelPrefab) as Transform;

myModelTrf.parent = mTrackableBehaviour.transform;

myModelTrf.localPosition = new Vector3(0f, 0f, 0f);

myModelTrf.localRotation = Quaternion.identity;

myModelTrf.localScale = new Vector3(0.0005f, 0.0005f, 0.0005f);

myModelTrf.gameObject.active = true;

}

}

}





大致上是這個樣子 具體根據需求改動。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章