public override void tick(float totalElapsedTime) { var easedTime = _easeFunction(totalElapsedTime, 0, 1, _ownerTween.duration); var vec = _path.getPointOnPath(easedTime); // if we are relative, add the vec to our startValue if (_isRelative) { vec += _startValue; } _target.localScale = vec; }
public override void tick(float totalElapsedTime) { var easedTime = _easeFunction(totalElapsedTime, 0, 1, _ownerTween.duration); var vec = _path.getPointOnPath(easedTime); // if we are relative, add the vec to our startValue if (_isRelative) { vec += _startValue; } // handle look types switch (_lookAtType) { case GoLookAtType.NextPathNode: { _smoothedRotation.smoothValue = vec.Equals(_target.position) ? Quaternion.identity : Quaternion.LookRotation(vec - _target.position); _target.rotation = _smoothedRotation.smoothValue; //var lookAtNode = ( _ownerTween.isReversed || _ownerTween.isLoopoingBackOnPingPong ) ? _path.getPreviousNode() : _path.getNextNode(); //_target.LookAt( lookAtNode, Vector3.up ); break; } case GoLookAtType.TargetTransform: { _target.LookAt(_lookTarget, Vector3.up); break; } } // assign the position if (_useLocalPosition) { _target.localPosition = vec; } else { _target.position = vec; } }