Sam Hocevar
5d2ddbdb6f
math: use size_t instead of int for vector subscript to avoid torrents
of compiler warnings in 64-bit mode when sizeof(foo) is used as the
argument for the array subscript operator. No need to care about the
non-signedness since only positive indices work.
12 years ago
Sam Hocevar
090834b149
win32: start porting the graphical backend to DirectX 9. Apparently I
cannot used DirectX 10 because my video card only supports DX9, and there
is no compatibility layer. DX11 has feature levels for older hardware so
it would work with a DX9 card, but it's not available for WinXP.
12 years ago
Sam Hocevar
d855e72198
win32: the GDI+ byte swapping was wrong; fix that.
12 years ago
Sam Hocevar
d539f3b80c
win32: shuffle bytes in GDI images to match what OpenGL supports.
12 years ago
Sam Hocevar
a3f410d697
video: allow to set the default clear color.
12 years ago
Sam Hocevar
f35f4284b0
core: allow each blitted tile to be stretched differently.
12 years ago
Sam Hocevar
bd69c76f90
xbox: fix a few problems in the shader handling code; the first tutorial now
works on the Xbox.
12 years ago
Sam Hocevar
2831476774
build: major refactoring of the Win32 and Xbox project files; we now
link properly on the Xbox.
12 years ago
Sam Hocevar
6868b1eb32
math: remove old non-working vector code for the float to half conversion.
12 years ago
Sam Hocevar
fac42dd7a2
xbox: create the Xbox application class and add a project file for MrPigeon.
12 years ago
Sam Hocevar
4624e6394a
math: fix VS2010 compiler warnings in the float/half conversion tables, and
replace the well known DeBruijn sequence with a custom magic value to spare
one binary operation.
12 years ago
Sam Hocevar
edfa3dfc4b
core: allow to stretch 2D sprits in both X and Y directions.
12 years ago
Sam Hocevar
ad64711c84
sdl: convert any opened image to 8 bit per channel because we don't have
any mechanism yet for uploading exotic formats to the GPU.
12 years ago
Sam Hocevar
130071bd6a
math: add a few comments.
12 years ago
Sam Hocevar
56e4332597
build: reorganise math files in a single "math" directory, and get rid of the
"shader" source directory since we have "gpu".
12 years ago
Sam Hocevar
43e152053a
win32: add a lot of DirectX stubs.
12 years ago
Sam Hocevar
d9f600f7e3
math: disable vectors of halfs until we find a way to speed up the build
time, for now the .h takes 17 seconds to compile for each file!
12 years ago
Sam Hocevar
33a3897b06
math: add vectors of "half" to vector.h.
12 years ago
Sam Hocevar
2d3307c6b2
math: move cross product out of the .cpp file.
12 years ago
Sam Hocevar
2f4c181f7d
gl: compilation fix due to #if/#elif confusion.
12 years ago
Sam Hocevar
60a2e83d54
xbox: start working on an Xbox/Direct3D port.
12 years ago
Sam Hocevar
7fd393b7ef
sdl: on Windows, perform the input tick in the main drawing thread.
12 years ago
Sam Hocevar
0303a8384f
win32: fix Visual Studio compilation and link issues.
12 years ago
Sam Hocevar
89c3b3a60f
ps3: fix PS3 build after the Queue refactoring.
12 years ago
Sam Hocevar
8bea4cf189
math: ensure real::fabs() is never chosen over std::fabs() for arguments
that are not explicitly real, even with namespace mistakes.
12 years ago
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
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
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
54f74a1b20
win32: some compilation fixes here and there.
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".
13 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