public void Switch(string sceneName, float fadeOutDuration, float fadeInDuration) { if (isSwitching) { return; } isSwitching = true; targetScene = sceneName; FadeOutProcess fadeOut = new FadeOutProcess(fadeOutDuration, fader); fadeOut.TerminateCallback += FadeOutEnded; FadeInProcess fadeIn = new FadeInProcess(fadeInDuration, fader); fadeIn.TerminateCallback += FadeInEnded; fadeOut.Attach(fadeIn); procManager.LaunchProcess(fadeOut); }
public void FadeFromBlack(float duration, Process.OnTerminateCallback endCallback, float delay = 0f) { FadeInProcess fadeIn = new FadeInProcess(duration, fadeGraphic, true); if (endCallback != null) { fadeIn.TerminateCallback += endCallback; } if (delay != 0f) { TimedProcess delayProcess = new TimedProcess(delay); delayProcess.Attach(fadeIn); pm.LaunchProcess(delayProcess); } else { pm.LaunchProcess(fadeIn); } }