17 lines
461 B
JavaScript
17 lines
461 B
JavaScript
module.exports = transformMat3;
|
|
|
|
/**
|
|
* Transforms the vec3 with a mat3.
|
|
*
|
|
* @param {vec3} out the receiving vector
|
|
* @param {vec3} a the vector to transform
|
|
* @param {mat4} m the 3x3 matrix to transform with
|
|
* @returns {vec3} out
|
|
*/
|
|
function transformMat3(out, a, m) {
|
|
var x = a[0], y = a[1], z = a[2]
|
|
out[0] = x * m[0] + y * m[3] + z * m[6]
|
|
out[1] = x * m[1] + y * m[4] + z * m[7]
|
|
out[2] = x * m[2] + y * m[5] + z * m[8]
|
|
return out
|
|
} |