Commit Graph

8 Commits

Author SHA1 Message Date
Sergey Sharybin
9921e10583 Math: Set matrix to zero when inversion fails
Avoids usage of uninitialized memory when inversion fails.

That uninitialized memory can cause object to become visible when
it is supposed not to or other artifacts like that.

Longer term solution would be to check every instance of invert_m#
function and to explicit fallback when needed (possibly, using
extra utility functions).
2018-06-22 12:08:18 +02:00
Brecht Van Lommel
44a8070db3 Cleanup: fix incorrect contributor information. 2018-06-01 15:47:00 +02:00
Brecht Van Lommel
01c75c3765 Math: optimizations for 4x4x matrix inverse, multiplications.
In some heavy rigs matrix inverse can be 10% of computation time. This
reduces it to 2% by using Eigen's optimized 4x4 matrix inverse and SSE
matrix multiplication.
2018-06-01 12:00:11 +02:00
Sergey Sharybin
2868dcbe2b Fix compilation error with clang-5 2017-11-14 17:11:48 +01:00
Brecht Van Lommel
cf2005d942 Fix T47081: laplacian smooth edit mode tool crash. 2015-12-30 17:26:51 +01:00
Campbell Barton
5f0cf67882 Cleanup: quiet warning 2015-12-10 21:18:50 +11:00
Brecht Van Lommel
f9047c3f8c Eigen: fold remaining OpenNL code into intern/eigen.
Differential Revision: https://developer.blender.org/D1662
2015-12-10 01:58:10 +01:00
Brecht Van Lommel
858b680a50 Eigen: move C API into intern/eigen. 2015-12-10 01:58:06 +01:00