void Start() { // Assign all references mReconstructionBehaviour = FindObjectOfType <ReconstructionBehaviour>(); mCylinderTrackableHandler = FindObjectOfType <CylinderTrackableEventHandler>(); mSTEventHandler = GameObject.FindObjectOfType <SmartTerrainEventHandler>(); mSmartSurface = GameObject.FindObjectOfType <SurfaceBehaviour>(); mSTTrackableHandler = GameObject.FindObjectOfType <SmartTerrainTrackableEventHandler>(); // Register to events mCylinderTrackableHandler.CylinderTrackableFoundFirstTime += OnCylinderTrackableFoundFirstTime; // Load header textures for user instructions mPointDeviceTexture = Resources.Load <Texture2D>("UserInterface/header_pointdevice"); mPullBackTexture = Resources.Load <Texture2D>("UserInterface/header_pullbackslowly"); mTapIceTexture = Resources.Load <Texture2D>("UserInterface/header_tapice"); }
//初始化 public void Initial() { //初始化英雄 InitialHero(); //对ImageTarget的追踪进行关闭 Image.GetComponent <ImageTargetBehaviour>().enabled = false; //Smart Terrain //获取ReconstructionBehaviour ReconstructionBehaviour = smartTerrain.GetComponent <ReconstructionBehaviour>(); //获取Event Handler STEventHandler = smartTerrain.GetComponent <SmartTerrainEventHandler>(); //获取UI射线碰撞检测引用 RaycastInCanvas = canvas.GetComponent <GraphicRaycaster>(); //获取塔楼动画组件 towerAnim = Image.GetComponentInChildren <MainTower>(); //观察者模式 //对图片识别进行订阅 DT_ImageTargetEventHandler.OnFoundImage += ScanScene; //对surface识别进行订阅 SmartTerrainEventHandler.OnFoundSurface += surfaceFound; //对场景动画播放完毕进行订阅 SurroundingAniEvent.OnSceneAniFin += changjingAniFin; //对边塔动画播放完毕进行订阅 grow.OnPlay += AniCompleted; //对主塔动画播放完毕进行订阅 MainTower.OnTowerAniFin += StartGame; //对玩家的投掷动画帧事件进行订阅 PlayerAniEvent.OnThrowPoint += CreateWeapon; //对远程怪物的投掷动画帧事件进行订阅 MonsterAniEvent.OnSendArrow += CreateArrow; //对游戏失败事件进行订阅 TowerTrigger.OnGameFail += GameFail; }
void Start() { mPopUpMsg = GetComponent<SampleInitErrorHandler>(); if (!mPopUpMsg) { mPopUpMsg = gameObject.AddComponent<SampleInitErrorHandler>(); } mPopUpMsg.InitPopUp(); // register callback methods QCARAbstractBehaviour qcarBehaviour = (QCARAbstractBehaviour)FindObjectOfType(typeof(QCARAbstractBehaviour)); if (qcarBehaviour) { qcarBehaviour.RegisterQCARStartedCallback(OnQCARStarted); qcarBehaviour.RegisterQCARInitErrorCallback(OnQCARInitializationError); } //Assign all references m_reconstructionBehaviour = FindObjectOfType(typeof(ReconstructionBehaviour)) as ReconstructionBehaviour; m_uiInput = new GUIInputManager(); m_cylinderTrackableHandler = FindObjectOfType(typeof(CylinderTrackableEventHandler)) as CylinderTrackableEventHandler; m_smartTerrainEventHandler = GameObject.FindObjectOfType(typeof(SmartTerrainEventHandler)) as SmartTerrainEventHandler; m_smartSurface = GameObject.FindObjectOfType(typeof(SurfaceBehaviour)) as SurfaceBehaviour; m_smartTerrainTrackableHandler = GameObject.FindObjectOfType(typeof(SmartTerrainTrackableEventHandler)) as SmartTerrainTrackableEventHandler; //Register to events m_cylinderTrackableHandler.CylinderTrackableFoundFirstTime += OnCylinderTrackableFoundFirstTime; m_uiInput.TappedOnDoneButton += OnTappedOnDone; m_uiInput.TappedOnResetButton += OnTappedOnReset; }