modules/core/src/lib/gl-matrix-extras.js
// Transform as vector, only uses 3x3 minor matrix
Transform as vector, only uses 3x3 minor matrix
Transform as vector only uses 3x3 minor matrix
function vec3_transformMat4AsVector(out, a, m) {
  const x = a[0];
  const y = a[1];
  const z = a[2];
  const w = m[3] * x + m[7] * y + m[11] * z || 1.0;
  out[0] = (m[0] * x + m[4] * y + m[8] * z) / w;
  out[1] = (m[1] * x + m[5] * y + m[9] * z) / w;
  out[2] = (m[2] * x + m[6] * y + m[10] * z) / w;
  return out;
}
function vec3_transformMat4AsVector ( out , a , m ) { const x = a [ 0 ] ; const y = a [ 1 ] ; const z = a [ 2 ] ; const w = m [ 3 ] * x + m [ 7 ] * y + m [ 11 ] * z || 1.0 ; out [ 0 ] = ( m [ 0 ] * x + m [ 4 ] * y + m [ 8 ] * z ) / w ; out [ 1 ] = ( m [ 1 ] * x + m [ 5 ] * y + m [ 9 ] * z ) / w ; out [ 2 ] = ( m [ 2 ] * x + m [ 6 ] * y + m [ 10 ] * z ) / w ; return out ; }
Transform as vector, only uses 3x3 minor matrix
Transform as vector only uses 3x3 minor matrix