From 90a249b5ffb06cbb8303f2d6b4f039f8eb567046 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Sat, 11 Jan 2014 16:44:15 +0100 Subject: [PATCH] Optimized matrix inverse and division code (#149) --- glm/detail/func_matrix.inl | 113 ++----------------------------- glm/detail/type_mat.hpp | 22 +----- glm/detail/type_mat2x2.inl | 23 ++++++- glm/detail/type_mat3x3.inl | 32 ++++++++- glm/detail/type_mat4x4.inl | 118 ++++++++++++++++++--------------- glm/gtc/matrix_transform.inl | 5 +- readme.txt | 1 + test/core/core_func_matrix.cpp | 72 ++++++++++++++++++-- test/core/core_type_mat4x4.cpp | 76 ++++++++++++++++++--- 9 files changed, 255 insertions(+), 207 deletions(-) diff --git a/glm/detail/func_matrix.inl b/glm/detail/func_matrix.inl index 761006a8..c6a2c025 100644 --- a/glm/detail/func_matrix.inl +++ b/glm/detail/func_matrix.inl @@ -416,7 +416,7 @@ namespace detail { static T call(detail::tmat3x3 const & m) { - return + return + m[0][0] * (m[1][1] * m[2][2] - m[2][1] * m[1][2]) - m[1][0] * (m[0][1] * m[2][2] - m[2][1] * m[0][2]) + m[2][0] * (m[0][1] * m[1][2] - m[1][1] * m[0][2]); @@ -441,114 +441,9 @@ namespace detail + (m[1][0] * SubFactor01 - m[1][1] * SubFactor03 + m[1][3] * SubFactor05), - (m[1][0] * SubFactor02 - m[1][1] * SubFactor04 + m[1][2] * SubFactor05)); - return m[0][0] * DetCof[0] - + m[0][1] * DetCof[1] - + m[0][2] * DetCof[2] - + m[0][3] * DetCof[3]; - } - }; - - template