title: Efficient way to reduce a vectors magnitude by a specific length?
body: <p>Lets say I have an arbitrary vector A. What is the most efficient way to reducing that vectors magnitude by arbitrary amount?</p>
  
  <p>My current method is as follows:</p>
  
  <pre><code>Vector shortenLength(Vector A, float reductionLength) {
  
      Vector B = A;
      B.normalize();
      B *= reductionLength;
      return A - B;
  
  }
  </code></pre>
  
  <p>Is there a more efficent way to do this? Possibly removing the square root required to normalize B...</p>