using UnityEngine; namespace Stary.Evo.RKTools { #if Evo_Rokid public class ARTrackedImageEvoObj : Rokid.UXR.Module.ARTrackedImageObj { [HideInInspector] public string domain; [HideInInspector] public Transform trackedTransform; public bool isStartTrackedImage = false; public void Awake() { if (trackedTransform == null) { trackedTransform = this.transform; Debug.Log("StaryEvo:TrackedImageEvoObj: trackedTransform 未赋值,以自动赋值为自身"); } OnARTrackedImageAdded.AddListener(OnARTrackedImageAddedEvent); OnARTrackedImageUpdated.AddListener(OnARTrackedImageUpdateEvent); OnARTrackedImageRemoved.AddListener(OnARTrackedImageRemovedEvent); } private void OnARTrackedImageAddedEvent(Rokid.UXR.Module.ARTrackedImageObj obj) { TrackedImageEvoManager trackedImageEvoManager = Rokid.UXR.Module.ARTrackedImageManager.Instance as TrackedImageEvoManager; trackedImageEvoManager.SetTrackedImageEvoData(trackedImageIndex, domain, trackedTransform); isStartTrackedImage = true; } private void OnARTrackedImageUpdateEvent(Rokid.UXR.Module.ARTrackedImageObj obj) { if (isStartTrackedImage) { } else { } } private void OnARTrackedImageRemovedEvent(Rokid.UXR.Module.ARTrackedImageObj obj) { isStartTrackedImage = false; } public void OnDestroy() { OnARTrackedImageAdded.RemoveListener(OnARTrackedImageAddedEvent); } } #endif }