applyProjection method

void applyProjection(
  1. Matrix4 arg
)

Projects this using the projection matrix arg

Implementation

void applyProjection(Matrix4 arg) {
  final Float64List argStorage = arg._m4storage;
  final double z = _v3storage[2];
  final double y = _v3storage[1];
  final double x = _v3storage[0];
  final double d =
      1.0 / (argStorage[15] + argStorage[11] * z + argStorage[7] * y + argStorage[3] * x);
  _v3storage[0] =
      (argStorage[12] + argStorage[8] * z + argStorage[4] * y + argStorage[0] * x) * d;
  _v3storage[1] =
      (argStorage[13] + argStorage[9] * z + argStorage[5] * y + argStorage[1] * x) * d;
  _v3storage[2] =
      (argStorage[14] + argStorage[10] * z + argStorage[6] * y + argStorage[2] * x) * d;
}