Sam Hocevar
7108f8566d
math: add orthogonal() and orthonormal() for 3-component vectors.
vor 11 Jahren
Benjamin ‘Touky’ Huet
c7219ff1dd
New year copyright update.
vor 12 Jahren
Sam Hocevar
d6634da83f
build: fix the WTFPL site URL in all code comments.
vor 12 Jahren
Sam Hocevar
eb51928415
math: add inversion code for 2×2 and 3×3 matrices, and transposition
code for all matrices.
vor 12 Jahren
Sam Hocevar
0a52e68f6f
math: rename matrix.h to vector.h and simplify some stuff, especially in
the matrix code itself.
vor 13 Jahren
Sam Hocevar
57df2357de
math: try to implement the magic getter/setter pattern. BREAKS BUILD.
vor 13 Jahren
Sam Hocevar
6767dae741
core: disallow casting eg. a vec3 into a vec2. Use the xy() getter instead.
vor 13 Jahren
Sam Hocevar
56511457d2
test: give more explicit names to unit test cases.
vor 13 Jahren
Sam Hocevar
5081f7034a
test: reorganise test suite and benchmark code.
vor 13 Jahren
Sam Hocevar
5a5b811200
lolunit: rename a few methods for consistency.
vor 13 Jahren
Sam Hocevar
00b8d5c28d
test: improve matrix and vector uni tests.
vor 13 Jahren
Sam Hocevar
5ab9eb3c62
test: get rid of the need for LOLUNIT_SETUP_FIXTURE().
vor 13 Jahren
Sam Hocevar
a374127e80
test: replace CppUnit with our LolUnit test suite.
CppUnit is really too large for our needs, would require to be precompiled
for many platforms, in all combinations of debug and release modes, with
additional variants for libstdc++ versions. We replace it with our own
lightweight implementation, LolUnit. Good riddance.
vor 13 Jahren
Sam Hocevar
5454005d81
debug: various improvements to the test programs.
vor 13 Jahren
Sam Hocevar
0328a6dfa3
test: add a unit test for the recent vector promotion problem.
vor 13 Jahren
Sam Hocevar
3213d5b7a5
core: add the unary minus operator to vectors.
vor 13 Jahren
Sam Hocevar
7329692663
math: implement vector comparisons and add minimal unit tests for this
feature.
vor 13 Jahren
Sam Hocevar
8848cf53db
Put everything in the "lol" namespace. Better late than never.
vor 13 Jahren
Sam Hocevar
6405ef32ea
Get rid of float3, float4, int3 etc. in favour of GLSL types.
vor 13 Jahren
Sam Hocevar
4b484d5bc8
Make the float4x4 constructor fill only the matrix's diagonal. Thus
the float4x4::identity() method is no longer necessary.
vor 13 Jahren
Sam Hocevar
7015943141
Add matrix determinant and inverse methods.
vor 13 Jahren
Sam Hocevar
da73635c64
Add an optional cppunit dependency for unit tests.
vor 13 Jahren