MCPcopy Create free account
hub / github.com/Bloom-Engine/engine / mat4_mul_vec4

Function mat4_mul_vec4

native/shared/src/renderer/util.rs:85–92  ·  view source on GitHub ↗

Multiply a column-major 4x4 matrix by a column vector.

(m: &[[f32; 4]; 4], v: &[f32; 4])

Source from the content-addressed store, hash-verified

83
84/// Multiply a column-major 4x4 matrix by a column vector.
85pub fn mat4_mul_vec4(m: &[[f32; 4]; 4], v: &[f32; 4]) -> [f32; 4] {
86 [
87 m[0][0]*v[0] + m[1][0]*v[1] + m[2][0]*v[2] + m[3][0]*v[3],
88 m[0][1]*v[0] + m[1][1]*v[1] + m[2][1]*v[2] + m[3][1]*v[3],
89 m[0][2]*v[0] + m[1][2]*v[1] + m[2][2]*v[2] + m[3][2]*v[3],
90 m[0][3]*v[0] + m[1][3]*v[1] + m[2][3]*v[2] + m[3][3]*v[3],
91 ]
92}
93
94pub fn mat4_translate(m: [[f32; 4]; 4], v: [f32; 3]) -> [[f32; 4]; 4] {
95 let mut out = m;

Calls

no outgoing calls