Пример #1
0
 public static F64Vec4 RSqrtFast(F64Vec4 a)
 {
     return(new F64Vec4(Fixed64.RSqrtFast(a.RawX), Fixed64.RSqrtFast(a.RawY), Fixed64.RSqrtFast(a.RawZ), Fixed64.RSqrtFast(a.RawW)));
 }
Пример #2
0
 public static F64Vec4 NormalizeFast(F64Vec4 a)
 {
     F64 ooLen = F64.FromRaw(Fixed64.RSqrtFast(Fixed64.Mul(a.RawX, a.RawX) + Fixed64.Mul(a.RawY, a.RawY) + Fixed64.Mul(a.RawZ, a.RawZ) + Fixed64.Mul(a.RawW, a.RawW))); return(ooLen * a);
 }
Пример #3
0
 public static F64Vec3 RSqrtFast(F64Vec3 a)
 {
     return(new F64Vec3(Fixed64.RSqrtFast(a.RawX), Fixed64.RSqrtFast(a.RawY), Fixed64.RSqrtFast(a.RawZ)));
 }
Пример #4
0
 public static F64 RSqrtFast(F64 a)
 {
     return(FromRaw(Fixed64.RSqrtFast(a.Raw)));
 }
Пример #5
0
 public static F64Vec2 RSqrtFast(F64Vec2 a)
 {
     return(new F64Vec2(Fixed64.RSqrtFast(a.RawX), Fixed64.RSqrtFast(a.RawY)));
 }
Пример #6
0
 public static F64Vec2 NormalizeFast(F64Vec2 a) { F64 ooLen = F64.FromRaw(Fixed64.RSqrtFast(Fixed64.Mul(a.RawX, a.RawX) + Fixed64.Mul(a.RawY, a.RawY))); return ooLen * a; }
Пример #7
0
 public static F32Vec3 NormalizeFast(F32Vec3 a)
 {
     F32 ooLen = F32.FromRaw((int)(Fixed64.RSqrtFast((long)a.RawX * (long)a.RawX + (long)a.RawY * (long)a.RawY + (long)a.RawZ * (long)a.RawZ) >> 16)); return(ooLen * a);
 }