Beispiel #1
0
        private void DoOnPathTweenUpdate(object param)
        {
            tween = GetComponent <iTween>();
            float t = tween.GetClampPercentage();

            t = t + 0.01f;
            if (t > 1f)
            {
                t = 1f;
            }

            //SetAnimDirWithPos(nextPos, transform);
            if (tweenUpdateCallback != null)
            {
                runningDuration = -Time.unscaledDeltaTime;
                if (runningDuration <= 0f)
                {
                    Vector3 nextPos = tween.Path.Interp(Mathf.Clamp(t, 0f, 1f));
                    runningDuration = updateInterval;
                    //Quaternion quaternion = Quaternion.Euler(0, 0, MAP_ANGLE);
                    //Vector3 dir2 = quaternion * (nextPos - transform.position);
                    //Vector3 angel = Vector3.ProjectOnPlane(nextPos, transform.position);
                    //float angel = 0;
                    //Vector3 dir2 = nextPos - transform.position;
                    //Vector3 nextXProject = Vector3.ProjectOnPlane(nextPos, Vector3.right);
                    //Vector3 curXProject = Vector3.ProjectOnPlane(transform.position, Vector3.right);
                    //Quaternion quaternion = Quaternion.Euler(0, 0, 90);
                    //Vector3 dir = Vector3.ProjectOnPlane(nextPos, Vector3.right);

                    //Vector3 nextXProject = Vector3.ProjectOnPlane(nextPos, Vector3.forward);
                    //Vector3 curXProject = Vector3.ProjectOnPlane(transform.position, Vector3.forward);
                    //Quaternion quaternion = Quaternion.Euler(90, 0, -45);
                    //if (nextXProject - curXProject != Vector3.zero)
                    //{
                    //    Vector3 myResutl = quaternion * (nextXProject - curXProject);
                    //    //tweenUpdateCallback(param, nextPos,transform.position, dir2, angel);
                    //    tweenUpdateCallback(param, myResutl, angel);
                    //}

                    tweenUpdateCallback(param, nextPos, transform.position, t);
                }
            }
        }