Sam Hocevar
|
c0cb995fd2
|
win32: various compilation fixes, mostly project updates, but also a
workaround for a Visual Studio compiler bug (Connect Id #730878).
|
12 years ago |
Sam Hocevar
|
7867c6ea3e
|
math: fix minor warnings in half.h and vector.h.
|
12 years ago |
Sam Hocevar
|
b4610706c0
|
math: move half.h into the public headers.
|
12 years ago |
Sam Hocevar
|
420a005214
|
math: disable annoying compiler warnings in vector.h.
|
12 years ago |
Sam Hocevar
|
7723d892f7
|
math: make sure magic swizzling vectors don't actually store data, and
do the swizzling by using their address rather than their members.
|
12 years ago |
Sam Hocevar
|
06081053ba
|
math: minor tweak to avoid using macros with empty parameters.
|
12 years ago |
Sam Hocevar
|
06d9d00c34
|
win32: no longer ship GDI+ because MinGW ships a working version, including
for Win64.
|
12 years ago |
Sam Hocevar
|
8684d237e9
|
win32: add a few predefined macros to the VS build system.
|
12 years ago |
Sam Hocevar
|
481212559e
|
math: disable const union members on GCC prior to 4.6.
|
12 years ago |
Sam Hocevar
|
8942c9a939
|
math: add new coercion rules for vector classes.
|
12 years ago |
Sam Hocevar
|
1a6acffe34
|
build: disable excessive image cleanup rules.
|
12 years ago |
Sam Hocevar
|
12414bc6b9
|
math: some refactoring in the vector operations, to make it easier to
implement automatic promotion in the future.
|
12 years ago |
Sam Hocevar
|
8bca639606
|
math: add missing operators (==, !, <= etc.) to the "half" class so that
it can at last be put into a vector.
|
12 years ago |
Sam Hocevar
|
6951578bb7
|
math: minor compilation fixes for Visual Studio. Still does not link.
|
12 years ago |
Sam Hocevar
|
d27443a5d7
|
math: allow vectors of half and real; they don't support swizzling or rgba
getter aliases.
|
12 years ago |
Sam Hocevar
|
64f6c5818b
|
test: that cast was necessary, after all...
|
12 years ago |
Sam Hocevar
|
54f74a1b20
|
win32: some compilation fixes here and there.
|
12 years ago |
Sam Hocevar
|
03250fa321
|
test: remove a useless cast.
|
12 years ago |
Sam Hocevar
|
db728e48fe
|
threads: change Queue to a template so that we can manage the element type.
|
12 years ago |
Sam Hocevar
|
38624cb909
|
math: disallow using vector swizzling components as lvalues until we
switch to C++11.
|
12 years ago |
Sam Hocevar
|
8f2817e813
|
math: use const references instead of passing arguments by value in
the magic vector swizzling assignment methods.
|
12 years ago |
Sam Hocevar
|
6838ff88b6
|
math: add "const" to many vector swizzling patterns to forbid constructs
such as "foo.xx = bar.xy".
|
12 years ago |
Sam Hocevar
|
2fe8d1f9a0
|
math: fix a syntax error in vector.h due to duplicate macro declaration.
|
12 years ago |
Sam Hocevar
|
0a52e68f6f
|
math: rename matrix.h to vector.h and simplify some stuff, especially in
the matrix code itself.
|
13 years ago |
Sam Hocevar
|
e3220b2d74
|
math: some simplifications in the magic vector templates, and some macros
removed because they were used only once.
|
13 years ago |
Sam Hocevar
|
c8d5630e4e
|
math: finally get the GLSL-like swizzling to work.
|
13 years ago |
Sam Hocevar
|
57df2357de
|
math: try to implement the magic getter/setter pattern. BREAKS BUILD.
|
13 years ago |
Sam Hocevar
|
d38a79ee3d
|
math: move most vector and matrix member functions to global functions.
|
13 years ago |
Sam Hocevar
|
bf604ef1f7
|
math: use the usual GLSL member names for vectors (xyzw, rgba, stpq).
|
13 years ago |
Sam Hocevar
|
bed5dea0c0
|
math: implement ulp() for reals, which returns the smallest real y > 0 such
that x + y != x, and nextafter() which behaves like the C function.
|
13 years ago |
Sam Hocevar
|
d763474c0b
|
lolremez: release LolRemez 0.2.
|
13 years ago |
Sam Hocevar
|
a949a2cd08
|
math: fix an infinite loop in the real number print function.
|
13 years ago |
Sam Hocevar
|
dfdff977c1
|
math: significant performance improvements in the Remez solver.
|
13 years ago |
Sam Hocevar
|
c4bad581a2
|
math: write a faster factorial method for use in exp() and sin(). These
functions are now about 20% faster.
|
13 years ago |
Sam Hocevar
|
2ef212be53
|
core: throw out the idea of a disk thread, let's seem what comes from it.
|
13 years ago |
Sam Hocevar
|
9f9566bdb6
|
lolremez: distribute Visual Studio files with LolRemez.
|
13 years ago |
Sam Hocevar
|
52e44ef8be
|
core: fix a few implicit 64-to-32-bit casts in the real methods.
|
13 years ago |
Sam Hocevar
|
366644d43c
|
real: get rid of <<= and >>= operators; we can use ldexp() instead. As a
bonus, multiplication or division by a power of two will be optimised as
a shift of the exponent.
|
13 years ago |
Sam Hocevar
|
578b35c806
|
real: fix a rounding bug in real number printing.
|
13 years ago |
Sam Hocevar
|
8ec896f23f
|
build: remove #if directives from remez.cpp when distributing LolRemez.
|
13 years ago |
Sam Hocevar
|
df39a0cedd
|
math: make everything clean for a LolRemez release.
|
13 years ago |
Sam Hocevar
|
2beb5d7b8c
|
core: placement new requires #include <new>, fixing that and a few other
missing includes.
|
13 years ago |
Sam Hocevar
|
48bf48a4e4
|
math: move the Remez algorithm implementation to the core.
|
13 years ago |
Sam Hocevar
|
f56c72c53d
|
core: fix the sign of a negative real number raised to an even power, and
add the corresponding unit test.
|
13 years ago |
Sam Hocevar
|
992c198a66
|
core: allow to build a real number using a string literal.
|
13 years ago |
Sam Hocevar
|
5d01ca923a
|
core: fix compilation warnings in one of the float-to-half LUTs.
|
13 years ago |
Sam Hocevar
|
3283dfc011
|
build: minor reorganisation of the sandbox code.
|
13 years ago |
Sam Hocevar
|
b2d73f6310
|
core: prefix Entity members with m_ to avoid accidental shadowing.
|
13 years ago |
Sam Hocevar
|
d026703430
|
build: for now, assume anything with <pthread.h> uses the pthread API.
|
13 years ago |
Sam Hocevar
|
dfdbbfdfc0
|
gl: cache viewport size on all platforms, because we cannot query it from
the game thread.
|
13 years ago |