public override void ActionToDo()
        {
            ViveSR_Experience_Demo.instance.bg.SetActive(isOn);
            ViveSR_Experience_Demo.instance.realWorldFloor.SetActive(isOn);

            PortalScript.SetPortal(isOn);

            if (isOn)
            {
                ViveSR_Experience_ControllerDelegate.triggerDelegate  += HandleTrigger;
                ViveSR_Experience_ControllerDelegate.touchpadDelegate += HandleTouchpad;
            }
            else
            {
                ViveSR_Experience_ControllerDelegate.triggerDelegate  -= HandleTrigger;
                ViveSR_Experience_ControllerDelegate.touchpadDelegate -= HandleTouchpad;
                dartGeneratorMgr.DestroyObjs();
            }
        }
        public void Init()
        {
            EffectsScript = GetComponent <ViveSR_Experience_Effects>();
            PortalScript  = GetComponent <ViveSR_Experience_Portal>();
            dartGenerator = PortalScript.dartGeneratorMgr_portal.GetComponent <ViveSR_Experience_IDartGenerator>();

            GameObject attachPointCanvas = ViveSR_Experience.instance.AttachPoint.transform.GetChild(ViveSR_Experience.instance.AttachPointIndex).transform.gameObject;

            LeftHint    = attachPointCanvas.transform.Find("TouchpadCanvas/LeftText").gameObject;
            RightHint   = attachPointCanvas.transform.Find("TouchpadCanvas/RightText").gameObject;
            TriggerHint = attachPointCanvas.transform.Find("TriggerCanvas").gameObject;

            PortalScript.SetPortal(true);
            ViveSR_Experience_ControllerDelegate.triggerDelegate  += HandleTrigger_ThrowableItemUI;
            ViveSR_Experience_ControllerDelegate.touchpadDelegate += HandleTouchpad_ControlPortal;
            ViveSR_Experience_ControllerDelegate.gripDelegate     += HandleGrip_SwitchEffects;

            PortalScript.Init();
        }