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.
|
13 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 |
Sam Hocevar
|
2d3ee50da3
|
test: do not test for strict doubles equality in quaternion unit test.
|
13 years ago |
Sam Hocevar
|
0161879a84
|
core: try to merge Ticker and Emcee. Still not very good.
|
13 years ago |
Sam Hocevar
|
3d3ec36548
|
core: start working on the Emcee class.
|
13 years ago |
Sam Hocevar
|
215b6c2065
|
test: unroll the Mandelbrot loop to gain a few milliseconds per frame, and
increase the maximum iteration count to 340.
|
13 years ago |
Sam Hocevar
|
6ebc4c88a7
|
build: do not use --host=none with NaCl; we can be more specific, eg. with
--host=i386 or --host=x86_64.
|
13 years ago |
Sam Hocevar
|
608f52eefb
|
test: proper multithreading in the Mandelbrot tutorial.
|
13 years ago |
Sam Hocevar
|
921d157ee0
|
core: implement Queue on Win32 and on the PS3.
|
13 years ago |
Sam Hocevar
|
94f5450399
|
test: minor tuning, esp. for the PS3.
|
13 years ago |
Sam Hocevar
|
c2a8082c09
|
core: make the Queue object work with several producers, and get rid of
the idiotic memmove() we were using.
|
13 years ago |