Beispiel #1
0
        public virtual void UpdatePosition()
        {
            Vector3 target = _spline.EvaluatePositionAtUnit(_pathPosition, _positionUnits)
                             + _toMove.right * _offsetFromSpline.x + _toMove.up * _offsetFromSpline.y;

            _toMove.position = ExtVector3.OwnSmoothDamp(_toMove.position, target, ref _refPositionVelocity, _dampingTimePosition, Mathf.Infinity, Time.fixedDeltaTime);
        }
Beispiel #2
0
        //public static void GenerateAndSwitchBranch(ControllerStick stick, SplineBase splineA, SplineBase splineB, float from, float to, SplineBase.PositionUnits positionUnits)
        //{
        //    SplineBase generatedSpline = BranchBetweenSplines.GenerateBranch(splineA, splineB, from, to, positionUnits);
        //    stick.ChangeSpline(generatedSpline, 0);
        //}

        public void BasicPositionAndOffset(float offset)
        {
            Vector3 target = PositionWithoutOffsetFromSpline(offset)
                             + _toMove.right * _offsetFromSpline.x + _toMove.up * _offsetFromSpline.y;

            _toMove.position = ExtVector3.OwnSmoothDamp(_toMove.position, target, ref _refPositionVelocity, _dampingTimePosition, Mathf.Infinity, Time.fixedDeltaTime);
        }
Beispiel #3
0
        private void ApplyChange()
        {
            //_camera.transform.position = _follow.position;
            //_camera.transform.LookAt(_lookAt, _upReference.up);



            _camera.transform.position = ExtVector3.OwnSmoothDamp(_camera.transform.position, _follow.position, ref _refPositionVelocity, _dampingPosition, Mathf.Infinity, Time.deltaTime);
            Quaternion targetRotation = Quaternion.LookRotation(_lookAt.position - _camera.transform.position, _upReference.up);

            //target = target * Quaternion.Euler(_offsetRotation);
            _camera.transform.rotation = ExtRotation.OwnSmoothDamp(_camera.transform.rotation, targetRotation, ref _refRotationVelocity, _dampingLookAt, Time.deltaTime);
        }
 private static float SmoothDampAngle(float current, float target, ref float currentVelocity, float smoothTime, float maxSpeed, float deltaTime)
 {
     target = current + DeltaAngle(current, target);
     return(ExtVector3.OwnSmoothDamp(current, target, ref currentVelocity, smoothTime, maxSpeed, deltaTime));
 }