//10 times faster than (Math.log(x) / Math.LN //but only for integers //http://www.nbilyk.com/optimizing-actionscript-3 public function log2(x:int):int { var num:int = x >> 16; var sign:int = int(!num); var ans:int = (sign << 4) ^ 24; num = x >> (ans); sign = int(!num); ans = (sign << 3) ^ (ans + 4); num = x >> (ans); sign = int(!num); ans = (sign << 2) ^ (ans + 2); num = x >> (ans); sign = int(!num); ans = (sign << 1) ^ (ans + 1); num = x >> (ans); sign = int(!num); ans = sign ^ ans; return ans; }