4 mat3x3 mat3x3_product(mat3x3 m1, mat3x3 m2)
8 for (int i = 0; i < 3; ++i) {
9 for (int j = 0; j < 3; ++j) {
11 for (int k = 0; k < 3; ++k) {
12 result.M[i][j] += m1.M[i][k] * m2.M[k][j];
20 mat3x3 mat3x3_product2(mat3x3 m1, mat3x3 m2, mat3x3 m3)
22 return mat3x3_product(m1, mat3x3_product(m2, m3));
25 mat3x3 trans_mat(float x, float y)
38 mat3x3 rot_mat(float angle)
42 {cosf(angle), -sinf(angle), 0.0f},
43 {sinf(angle), cosf(angle), 0.0f},
51 mat3x3 scale_mat(float factor)