Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private Vector3 _prevPosition;
- private int _bufferSize = 8;
- private int _bufferIndex = 0;
- private Vector3[] _buffer;
- [SerializeField] private Transform racket;
- private void Start()
- {
- _buffer = new Vector3[_bufferSize];
- _bufferIndex = 0;
- _prevPosition = racket.transform.position;
- }
- private void Update()
- {
- var currentPosition = racket.transform.position;
- var delta = currentPosition - _prevPosition;
- _buffer[_bufferIndex] = delta;
- _bufferIndex = (_bufferIndex + 1) % _bufferSize;
- var velocity = GetRacketVelocity();
- }
- private float GetRacketVelocity()
- {
- Vector3 total = Vector3.zero;
- for (int i = 0; i < _buffer.Length; i++)
- {
- total += _buffer[i];
- }
- return total.magnitude;
- }
Advertisement
Add Comment
Please, Sign In to add comment