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

Function mat4_mul_vec4

native/shared/src/picking.rs:269–276  ·  view source on GitHub ↗
(m: &[[f32; 4]; 4], v: &[f32; 4])

Source from the content-addressed store, hash-verified

267}
268
269fn mat4_mul_vec4(m: &[[f32; 4]; 4], v: &[f32; 4]) -> [f32; 4] {
270 [
271 m[0][0]*v[0] + m[1][0]*v[1] + m[2][0]*v[2] + m[3][0]*v[3],
272 m[0][1]*v[0] + m[1][1]*v[1] + m[2][1]*v[2] + m[3][1]*v[3],
273 m[0][2]*v[0] + m[1][2]*v[1] + m[2][2]*v[2] + m[3][2]*v[3],
274 m[0][3]*v[0] + m[1][3]*v[1] + m[2][3]*v[2] + m[3][3]*v[3],
275 ]
276}
277
278fn mat4_transform_point(m: &[[f32; 4]; 4], p: &[f32; 3]) -> [f32; 3] {
279 let v = mat4_mul_vec4(m, &[p[0], p[1], p[2], 1.0]);

Callers 2

screen_to_rayFunction · 0.70
mat4_transform_pointFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected