mirror of
https://github.com/HarbourMasters/SpaghettiKart
synced 2026-07-08 14:37:09 -04:00
Matrix multi interp
This commit is contained in:
@@ -391,7 +391,8 @@ struct InterpolateCtx {
|
||||
// break;
|
||||
|
||||
case Op::MatrixMult:
|
||||
//interpolate_mtxf(&tmp_mtxf, &old_op.matrix_mult.mf, &new_op.matrix_mult.mf);
|
||||
interpolate_mtxf(&tmp_mtxf, &old_op.matrix_mult.mf, &new_op.matrix_mult.mf);
|
||||
mtxf_multiplication(*gInterpolationMatrix, tmp_mtxf.mf, new_op.matrix_mult.mf.mf);
|
||||
// Matrix_Mult(gInterpolationMatrix, (Matrix*) &tmp_mtxf, new_op.matrix_mult.mode);
|
||||
break;
|
||||
|
||||
|
||||
@@ -45,7 +45,7 @@ void FrameInterpolation_RecordMatrixPush(Mat4* matrix);
|
||||
|
||||
void FrameInterpolation_RecordMatrixPop(Mat4* matrix);
|
||||
|
||||
//void FrameInterpolation_RecordMatrixMult(Matrix* matrix, MtxF* mf, u8 mode);
|
||||
void FrameInterpolation_RecordMatrixMult(Mat4* matrix, MtxF* mf, u8 mode);
|
||||
|
||||
void FrameInterpolation_RecordMatrixTranslate(Mat4* matrix, Vec3f b);
|
||||
|
||||
|
||||
@@ -803,6 +803,9 @@ void func_802B6D58(Mat4 arg0, Vec3f arg1, Vec3f arg2) {
|
||||
|
||||
void mtxf_multiplication(Mat4 dest, Mat4 mat1, Mat4 mat2) {
|
||||
Mat4 product;
|
||||
|
||||
FrameInterpolation_RecordMatrixMult(dest, product, 0);
|
||||
|
||||
product[0][0] =
|
||||
(mat1[0][0] * mat2[0][0]) + (mat1[0][1] * mat2[1][0]) + (mat1[0][2] * mat2[2][0]) + (mat1[0][3] * mat2[3][0]);
|
||||
product[0][1] =
|
||||
|
||||
Reference in New Issue
Block a user