Foxxything

eww

May 11th, 2023
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.49 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. }
Add Comment
Please, Sign In to add comment