(m: &[[f32; 4]; 4], v: &[f32; 4])
| 267 | } |
| 268 | |
| 269 | fn 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 | |
| 278 | fn 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]); |
no outgoing calls
no test coverage detected