public void SetCameraFadeData(CameraFadeType fadeType, bool isForceAlpha, float delay, float fadeTime, CallBack completeCallBack) { this.fadeType = fadeType; this.isForceAlpha = isForceAlpha; this.delay = delay; this.fadeTime = fadeTime; this.completeCallBack = completeCallBack; tempFadeCaculateTime = fadeTime; }
internal void SetCameraFade(CameraFadeType type, float from, float to, uint framesIncrease, uint framesHold, uint framesDecrease) { CameraFadeOverlay.FadeType = type; CameraFadeOverlay.From = from; CameraFadeOverlay.To = to; CameraFadeOverlay.FramesIncrease = framesIncrease; CameraFadeOverlay.FramesHold = framesHold; CameraFadeOverlay.FramesDecrease = framesDecrease; CameraFadeOverlay.CurrentFrame = 0; }
internal void Load(BinaryReader reader) { FadeType = reader.ReadUInt32AsEnum <CameraFadeType>(); From = reader.ReadSingle(); To = reader.ReadSingle(); CurrentValue = reader.ReadSingle(); CurrentFrame = reader.ReadUInt32(); FramesIncrease = reader.ReadUInt32(); FramesHold = reader.ReadUInt32(); FramesDecrease = reader.ReadUInt32(); }
private static CameraFadeData GetCameraFadeData(CameraFadeType fadeType, bool isForceAlpha, float delay, float fadeTime, CallBack completeCallBack) { CameraFadeData data = null; if (cacheData.Count > 0) { data = cacheData[0]; cacheData.RemoveAt(0); } else { data = new CameraFadeData(); } data.SetCameraFadeData(fadeType, isForceAlpha, delay, fadeTime, completeCallBack); return(data); }
public IEnumerator ScreenFade(CameraFadeType fadeType, bool destroyOnComplete = true) { float transitionSpeed = 2; float waitTime = 0.25f; BlankScreen screen = new BlankScreen((fadeType == CameraFadeType.FadeIn) ? Color.black : Color.clear); Keyframe[] keys = new Keyframe[]{new Keyframe(0, 0, 0, 0), new Keyframe(1, 1, 2, 0)}; AnimationCurve curve = new AnimationCurve(keys); float alpha = (fadeType == CameraFadeType.FadeIn) ? 1 : 0; bool isDone = false; yield return new WaitForSeconds(waitTime); while (!isDone) { alpha += (fadeType == CameraFadeType.FadeIn) ? -(transitionSpeed * Time.deltaTime) : (transitionSpeed * Time.deltaTime); screen.SetAlpha(curve.Evaluate(alpha)); if (alpha < 0 || alpha > 1) { isDone = true; } yield return null; } if (destroyOnComplete) { screen.DestroyScreen(); } }
public CameraFadeData(CameraFadeType fadeType, bool isForceAlpha, float delay, float fadeTime, CallBack completeCallBack) { SetCameraFadeData(fadeType, isForceAlpha, delay, fadeTime, completeCallBack); }