Advertisement
Guest User

Untitled

a guest
Apr 27th, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.42 KB | None | 0 0
  1. float Q_rsqrt( float number )
  2. {
  3.     long i;
  4.     float x2, y;
  5.     const float threehalfs = 1.5F;
  6.  
  7.     x2 = number * 0.5F;
  8.     y = number;
  9.     i = * ( long * ) &y; // evil floating point bit level hacking
  10.     i = 0x5f3759df - ( i >> 1 ); // what the fuck?
  11.     y = * ( float * ) &i;
  12.     y = y * ( threehalfs - ( x2 * y * y ) ); // 1st iteration
  13. // y = y * ( threehalfs - ( x2 * y * y ) ); // 2nd iteration, this can be removed
  14.  
  15.     return y;
  16. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement