示例#1
0
        void OnGUI()
        {
            if (GUILayout.Button("Linear"))
            {
                MoveStart(ObservableEasing.Linear(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.linear));
            }

            if (GUILayout.Button("EaseInSine"))
            {
                MoveStart(ObservableEasing.EaseInSine(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInSine));
            }

            if (GUILayout.Button("EaseOutSine"))
            {
                MoveStart(ObservableEasing.EaseOutSine(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeOutSine));
            }

            if (GUILayout.Button("EaseInOutSine"))
            {
                MoveStart(ObservableEasing.EaseInOutSine(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInOutSine));
            }

            if (GUILayout.Button("EaseInQuad"))
            {
                MoveStart(ObservableEasing.EaseInQuad(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInQuad));
            }

            if (GUILayout.Button("EaseOutQuad"))
            {
                MoveStart(ObservableEasing.EaseOutQuad(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeOutQuad));
            }

            if (GUILayout.Button("EaseInOutQuad"))
            {
                MoveStart(ObservableEasing.EaseInOutQuad(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInOutQuad));
            }

            if (GUILayout.Button("EaseInCubic"))
            {
                MoveStart(ObservableEasing.EaseInCubic(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInCubic));
            }

            if (GUILayout.Button("EaseOutCubic"))
            {
                MoveStart(ObservableEasing.EaseOutCubic(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeOutCubic));
            }

            if (GUILayout.Button("EaseInOutCubic"))
            {
                MoveStart(ObservableEasing.EaseInOutCubic(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInOutCubic));
            }

            if (GUILayout.Button("EaseInQuart"))
            {
                MoveStart(ObservableEasing.EaseInQuart(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInQuart));
            }

            if (GUILayout.Button("EaseOutQuart"))
            {
                MoveStart(ObservableEasing.EaseOutQuart(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeOutQuart));
            }

            if (GUILayout.Button("EaseInOutQuart"))
            {
                MoveStart(ObservableEasing.EaseInOutQuart(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInOutQuart));
            }

            if (GUILayout.Button("EaseInQuint"))
            {
                MoveStart(ObservableEasing.EaseInQuint(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInQuint));
            }

            if (GUILayout.Button("EaseOutQuint"))
            {
                MoveStart(ObservableEasing.EaseOutQuint(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeOutQuint));
            }

            if (GUILayout.Button("EaseInOutQuint"))
            {
                MoveStart(ObservableEasing.EaseInOutQuint(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInOutQuint));
            }

            if (GUILayout.Button("EaseInExpo"))
            {
                MoveStart(ObservableEasing.EaseInExpo(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInExpo));
            }

            if (GUILayout.Button("EaseOutExpo"))
            {
                MoveStart(ObservableEasing.EaseOutExpo(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeOutExpo));
            }

            if (GUILayout.Button("EaseInOutExpo"))
            {
                MoveStart(ObservableEasing.EaseInOutExpo(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInOutExpo));
            }

            if (GUILayout.Button("EaseInCirc"))
            {
                MoveStart(ObservableEasing.EaseInCirc(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInCirc));
            }

            if (GUILayout.Button("EaseOutCirc"))
            {
                MoveStart(ObservableEasing.EaseOutCirc(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeOutCirc));
            }

            if (GUILayout.Button("EaseInOutCirc"))
            {
                MoveStart(ObservableEasing.EaseInOutCirc(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInOutCirc));
            }

            if (GUILayout.Button("EaseInBack"))
            {
                MoveStart(ObservableEasing.EaseInBack(1.0f));
                //DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInBack));
                DrawGraphYellow(DoTweenObservable(Ease.InBack));
            }

            if (GUILayout.Button("EaseOutBack"))
            {
                MoveStart(ObservableEasing.EaseOutBack(1.0f));
                //DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeOutBack));
                DrawGraphYellow(DoTweenObservable(Ease.OutBack));
            }

            if (GUILayout.Button("EaseInOutBack"))
            {
                MoveStart(ObservableEasing.EaseInOutBack(1.0f));
                //DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInOutBack));
                DrawGraphYellow(DoTweenObservable(Ease.InOutBack));
            }

            if (GUILayout.Button("EaseInElastic"))
            {
                MoveStart(ObservableEasing.EaseInElastic(1.0f));
                //DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInElastic));
                DrawGraphYellow(DoTweenObservable(Ease.InElastic));
            }

            if (GUILayout.Button("EaseOutElastic"))
            {
                MoveStart(ObservableEasing.EaseOutElastic(1.0f));
                //DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeOutElastic));
                DrawGraphYellow(DoTweenObservable(Ease.OutElastic));
            }

            if (GUILayout.Button("EaseInOutElastic"))
            {
                MoveStart(ObservableEasing.EaseInOutElastic(1.0f));
                //DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInOutElastic));
                DrawGraphYellow(DoTweenObservable(Ease.InOutElastic));
            }

            if (GUILayout.Button("EaseInBounce"))
            {
                MoveStart(ObservableEasing.EaseInBounce(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInBounce));
            }

            if (GUILayout.Button("EaseOutBounce"))
            {
                MoveStart(ObservableEasing.EaseOutBounce(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeOutBounce));
            }

            if (GUILayout.Button("EaseInOutBounce"))
            {
                MoveStart(ObservableEasing.EaseInOutBounce(1.0f));
                DrawGraphBlue(LeanTweenObservable(LeanTweenType.easeInOutBounce));
            }

            if (GUILayout.Button("ShowAvgResult"))
            {
                UnityEngine.Debug.Log("Avg:" + stopList.Where(x => x > 3.0f).Average());
            }

            if (GUILayout.Button("ReMotion"))
            {
                InitPerf();
                Observable.NextFrame().Subscribe(____ =>
                {
                    var sw = System.Diagnostics.Stopwatch.StartNew();
                    foreach (var xxx in testObjects)
                    {
                        xxx.transform.TweenPosition(new Vector3(10, 10, 10), 3.0f, EasingFunctions.Linear);
                    }
                    sw.Stop();
                    UnityEngine.Debug.Log("ReMotion Initial:" + sw.Elapsed.TotalMilliseconds + "ms");

                    Observable.TimerFrame(3).Subscribe(__ => startStopwatch = true);
                });
            }

            if (GUILayout.Button("DOTween"))
            {
                InitPerf();
                Observable.NextFrame().Subscribe(____ =>
                {
                    var sw = System.Diagnostics.Stopwatch.StartNew();
                    foreach (var xxx in testObjects)
                    {
                        xxx.transform.DOMove(new Vector3(10, 10, 10), 3f).SetEase(Ease.Linear);
                    }
                    sw.Stop();
                    UnityEngine.Debug.Log("DOTween Initial:" + sw.Elapsed.TotalMilliseconds + "ms");

                    Observable.TimerFrame(3).Subscribe(__ => startStopwatch = true);
                });
            }

            if (GUILayout.Button("LeanTween"))
            {
                InitPerf();

                Observable.NextFrame().Subscribe(____ =>
                {
                    var sw = System.Diagnostics.Stopwatch.StartNew();
                    foreach (var xxx in testObjects)
                    {
                        LeanTween.move(xxx, new Vector3(10, 10, 10), 3.0f).setEase(LeanTweenType.linear);
                    }
                    sw.Stop();
                    UnityEngine.Debug.Log("LeanTween Initial:" + sw.Elapsed.TotalMilliseconds + "ms");

                    Observable.TimerFrame(3).Subscribe(__ => startStopwatch = true);
                });
            }

            if (GUILayout.Button("iTween"))
            {
                InitPerf();

                Observable.NextFrame().Subscribe(____ =>
                {
                    var sw = System.Diagnostics.Stopwatch.StartNew();
                    foreach (var xxx in testObjects)
                    {
                        iTween.MoveTo(xxx, new Vector3(10f, 10f, 10f), 3.0f);
                    }
                    sw.Stop();
                    UnityEngine.Debug.Log("iTween Initial:" + sw.Elapsed.TotalMilliseconds + "ms");

                    Observable.TimerFrame(3).Subscribe(__ => startStopwatch = true);
                });
            }

            if (GUILayout.Button("Uween"))
            {
                InitPerf();

                Observable.NextFrame().Subscribe(____ =>
                {
                    var sw = System.Diagnostics.Stopwatch.StartNew();
                    foreach (var xxx in testObjects)
                    {
                        Uween.TweenXYZ.Add(xxx, 3.0f, new Vector3(10, 10, 10));
                    }
                    sw.Stop();
                    UnityEngine.Debug.Log("Uween Initial:" + sw.Elapsed.TotalMilliseconds + "ms");

                    Observable.TimerFrame(3).Subscribe(__ => startStopwatch = true);
                });
            }
        }