public void StartTransition() { SceneTransitionControl control = new SceneTransitionControl(); control.Init(); control.transition = Transition.StartTransition(); control.SetState(SceneTransitionControl.SceneTransitionFSMStateID.Show); }
public override void Enter(SceneTransitionControl entity) { AddressableResMgr.S.LoadSceneAsync("AddressDemo", (result) => { if (result.Scene != null) { entity.SetState(SceneTransitionControl.SceneTransitionFSMStateID.Hide); } }); }
private IEnumerator WaitAnimOver(Animator anim) { var info = anim.GetCurrentAnimatorStateInfo(0); while (info.normalizedTime < 1.0f) { info = anim.GetCurrentAnimatorStateInfo(0); yield return(null); } yield return(new WaitForEndOfFrame()); m_Entity.SetState(SceneTransitionControl.SceneTransitionFSMStateID.Clean); }
private IEnumerator FadeAnimOut(Image image, SceneTransitionControl entity) { float time = 0.0f; while (time < m_FadeTime) { time += Time.deltaTime; image.canvasRenderer.SetAlpha(Mathf.InverseLerp(1, 0, time / m_FadeTime)); yield return(new WaitForEndOfFrame()); } image.canvasRenderer.SetAlpha(1); yield return(new WaitForEndOfFrame()); entity.SetState(SceneTransitionControl.SceneTransitionFSMStateID.Clean); }