DarkRadiant: master c1373513
Author | Committer | Branch | Timestamp | Parent |
---|---|---|---|---|
orbweaver | orbweaver | master | 27.03.2021 20:39 | master f03e4057 |
Changeset | Matrix4 now uses an Eigen::Transform internally Eigen::Transform is a wrapper for an Eigen::Matrix structure which adds functionality specific to geometric transformations, e.g. extracting the affine part from an arbitrary (projective) transformation. Our own Matrix4 class is now just interface glue for this Eigen::Transformation object, which means we no longer need to implement linear algebra ourselves. Since Matrix4 is well covered by unit tests (which still pass), there should be no mathematical problems with this change, however the code is not yet optimal since some functions are still performing maths manually using xx(), xy() etc when they could be implemented using functionality exposed directly by Eigen (some of which may be optimised using SIMD instructions). |
|||
mod - libs/math/Matrix4.cpp | Diff File | |||
mod - libs/math/Matrix4.h | Diff File |