public void AnimateOpen(bool forward) { if (animating) { return; } animating = true; open = forward; //bgBlurrer.enabled = true; _dimmer.enabled = true; if (forward) { setHighlighted(_backButton.rt); } this.varyWithT((rawT) => { float t = forward ? rawT : 1 - rawT; _canvasGroup.alpha = Mathf.InverseLerp(0, .75f, t); Color color = Color.white; color.a = Mathf.InverseLerp(0, .75f, t); float elastT = EasingFunctions.Calc(t, EasingFunctions.ExpoEaseOut); this.transform.localScale = Vector3.LerpUnclamped(Vector3.one * 3, Vector3.one, elastT);// EasingFunctions.Calc(t, EasingFunctions.QuadEaseOut)); /*_rawImg.material.color = color; * _rawImg.material.SetFloat("_BlurAmt", Mathf.InverseLerp(1, 0.9f, t)); * _rawImg.material.SetFloat("_MipsBias", 6*Mathf.InverseLerp(1, 0, t)); * _rawImg.material.SetFloat("_BlurDist", 12 * (1-t));*/ //bgBlurrer.blurAmount = t; _dimmer.color = Color.Lerp(_dimmerFullColor.withAlpha(0), _dimmerFullColor, t); _highlightImg.color = Color.white.withAlpha(Mathf.InverseLerp(.5f, 1, t)); if (t == 1) { animating = false; } }, .5f); }
void animateChangedObject(int direction) { if (animating) { return; } animating = true; this.varyWithT((rawT) => { float t = EasingFunctions.Calc(rawT, EasingFunctions.QuadEaseIn); if (prevThingToShow != null) { prevThingToShow.gameObject.GetComponent <RawImageFitter>().offset = //new Vector2(direction * t * Screen.width, 0); new Vector2(0, direction * t * Screen.height); } //thingToShow.alpha = 0;// Mathf.InverseLerp(.25f, 1, t); //thingToShow.transform.localScale = Vector3.Lerp(Vector3.zero, Vector3.one, thingToShow.alpha);//.withY(1); thingToShow.gameObject.GetComponent <RawImageFitter>().offset = //new Vector2(direction * (t - 1) * Screen.width, 0); new Vector2(0, direction * (t - 1) * Screen.height); if (t == 1) { animating = false; //this.varyWithT((j) => { thingToShow.alpha = j; }, .2f); if (prevThingToShow != null) { prevThingToShow.alpha = 0; } } }, 0.25f); }