/// <summary> /// 配置单个识别图或者Model /// </summary> /// <param name="trackedName"></param> /// <param name="trackComName"></param> /// <param name="modelPre"></param> /// <returns></returns> public static Transform ConfigTrackable(string trackedName, string trackComName = "DefaultTrackableEventHandler", GameObject modelPre = null) { IEnumerable <TrackableBehaviour> tbs = TrackerManager.Instance.GetStateManager().GetTrackableBehaviours(); foreach (TrackableBehaviour tb in tbs) { if (tb.TrackableName == trackedName) { tb.gameObject.name = trackedName; //动态添加识别组件 tb.gameObject.AddComponent(ARSDK_SharedMethod.GetTypeUnknownAssembly(trackComName)); tb.gameObject.AddComponent <TurnOffBehaviour>(); GameObject augmentation = Instantiate(modelPre, tb.transform); return(augmentation.transform); } } return(null); }
private static bool IsVuforiaAvailable() { bool isLoad = ARSDK_SharedMethod.GetTypeUnknownAssembly("DefaultTrackableEventHandler") != null && ARSDK_SharedMethod.GetTypeUnknownAssembly("DefaultModelRecoEventHandler") != null && ARSDK_SharedMethod.GetTypeUnknownAssembly("DefaultInitializationErrorHandler") != null; if (isLoad && Loadstate == SDKLoadState.Loaded) { Loadstate = SDKLoadState.LoadAndInit; } else { if (isLoad) { Loadstate = SDKLoadState.Loaded; SDKLoadInit(); } else { Loadstate = SDKLoadState.UnLoad; } } return(isLoad); }