UNPKG

@woosh/meep-engine

Version:

Pure JavaScript game engine. Fully featured and production ready.

36 lines (27 loc) 744 B
import { v3_length } from "../../vec3/v3_length.js"; /** * * @param {number[]|Float32Array} out * @param {number} out_offset * @param {number[]|Float32Array} mat4 */ export function m4_extract_scale( out, out_offset, mat4 ){ const m11 = mat4[0]; const m12 = mat4[1]; const m13 = mat4[2]; const scale_x = v3_length(m11, m12, m13); const m21 = mat4[4]; const m22 = mat4[5]; const m23 = mat4[6]; const scale_y = v3_length(m21, m22, m23); const m31 = mat4[8]; const m32 = mat4[9]; const m33 = mat4[10]; const scale_z = v3_length(m31, m32, m33); out[out_offset] = scale_x; out[out_offset+1] = scale_y; out[out_offset+2] = scale_z; }