Sam Hocevar
16d53895fa
math: remove coercion rules in the vector classes, they increase the
compilation time for very little benefit and maybe even confusion.
vor 12 Jahren
Sam Hocevar
42fb9b6853
gpu: support 1-component (luminance) textures.
vor 12 Jahren
Sam Hocevar
3adf42b00c
build: hide LolFx external declarations behind macros.
vor 12 Jahren
Sam Hocevar
bbf72e1a64
core: pass the project directory to the binary build and get rid of
that 2-year old "temporary Win32 hack".
vor 12 Jahren
Sam Hocevar
6a6e46cf0d
system: try to autodetect the data directory from the executable path;
currently works for images (SDL and GDI+ loaders) and sound samples.
vor 12 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
57c2805351
math: reimplement min(), max(), abs() and fmod() in the lol:: namespace to
avoid conflicts with the C++ stdlib.
vor 12 Jahren
Sam Hocevar
26c945a31f
gpu: allow to specify the pixel format when creating a texture; the
internal format is then automatically deduced. Only a few 8-bit RGB
or RGBA formats are supported for now.
vor 12 Jahren
Sam Hocevar
8a688a7d50
misc: compilation fixes for Windows, X360 and PS3 introduced by the
texture class refactor.
vor 12 Jahren
Sam Hocevar
b9aba5d27a
gpu: put the texture creation code in its own class; for now a lot of things are
hardcoded and only the fractal demo uses it, but everything will eventually switch.
vor 12 Jahren
Sam Hocevar
ad00a34984
gpu: add support for triangle strips and fans, and change the DrawElement
calls so that they take a number of vertices or indexes, not elements.
vor 12 Jahren
Sam Hocevar
c5b10f5e9a
tutorial: flatten the fractal computation loop, and avoid the use of
new/delete when our arrays will do.
vor 12 Jahren
Sam Hocevar
d4c0c005d6
math: refactor real number constant declarations so that they are only
computed on demand with static initialisation.
vor 12 Jahren
Sam Hocevar
03e83798eb
build: fix the Raspberry Pi build and add a build script for it.
vor 12 Jahren
Sam Hocevar
c5915aa35c
tutorial: use real numbers in the fractal navigation (doubles are still
used in the fractal computation).
vor 12 Jahren
Sam Hocevar
5bd24fa1d3
build: hide the SDL_main.h inclusion in core.h, and only activate it
on Windows if using Visual Studio; if using MinGW, try to stick to the
original main() entry point.
vor 12 Jahren
Sam Hocevar
b5563ad21d
core: switch the Win32/x64 binaries to the Windows subsystem so that they
do not open a console at startup.
vor 12 Jahren
Sam Hocevar
951c93ab84
data: fix ascii.png search path.
vor 12 Jahren
Sam Hocevar
5008482e54
tutorial: remove dead code in 11_fractal.
vor 12 Jahren
Sam Hocevar
3389ed69a2
build: move all games to a "games" subdirectory to clean up the root
directory layout mess.
vor 12 Jahren
Sam Hocevar
78f7a303ff
build: reorganise all the build stuff so that it lies in build/ and
make sure each .vcxproj file is with its corresponding source code.
vor 12 Jahren
Sam Hocevar
28728814cc
core: replace usage of sin() or std::sin() with lol::sin() where appropriate.
vor 12 Jahren
Sam Hocevar
8375f3443d
build: fix the PS3 port by using our trig.h everywhere instead of stdlib
functions; also remove a lot of idiotic "using namespace std" from the
codebase.
vor 12 Jahren
Sam Hocevar
a71562bd83
core: rename f64vec4 to dvec4 etc. for consistency with GLSL.
vor 12 Jahren
Sam Hocevar
ee7dd6a699
misc: move more shaders to .lolfx files.
vor 12 Jahren
Sam Hocevar
4770daf4ac
math: replace len(vec) with length(vec) to match the GLSL naming.
vor 12 Jahren
Sam Hocevar
90bfc79b22
core: tick methods now use seconds, like any sane system.
vor 12 Jahren
Sam Hocevar
b49ba4ef56
core: prefix some member variables with m_ for clarity.
vor 12 Jahren
Sam Hocevar
24626c671f
tutorial: some refactoring in the tutorials.
vor 12 Jahren
Sam Hocevar
a54bb70d64
build: minor Windows compilation fixes.
vor 12 Jahren
Sam Hocevar
6169c874e4
gpu: port the vertex buffer abstraction layer to OpenGL.
vor 12 Jahren
Sam Hocevar
2601c970a2
gpu: refactor the vertex declaration code to allow several vertex streams.
vor 12 Jahren
Sam Hocevar
8f0fc94027
tutorial: fix a compilation error and remove now useless vector type casts.
vor 12 Jahren
Sam Hocevar
701eb778a3
tutorial: fix the texture swizzling for the fractal viewer on Xbox 360.
vor 12 Jahren
Sam Hocevar
1485e5bf63
gpu: add support for integer uniforms and fix a few PS3 and Linux compilation
issues that were introduced with the Direct3D changes.
vor 12 Jahren
Sam Hocevar
458378003c
win32: the uniform handling code was completely broken; we now properly
retrieve the constant's register index in the description table. This also
allows us to use a single uniform handle for both the vertex and pixel
shaders in a PS3 Cg program.
vor 12 Jahren
Sam Hocevar
c2ff2ad9b7
win32: add Direct3D texture creation code in the fractal zoomer. Shader
support is still missing.
vor 12 Jahren
Sam Hocevar
59ee25e0b3
win32: a few compilation fixes, including GDI+ linking properly now.
vor 12 Jahren
Sam Hocevar
40be36ec2c
test: fix logic bugs in two tutorials.
vor 12 Jahren
Sam Hocevar
c0cb995fd2
win32: various compilation fixes, mostly project updates, but also a
workaround for a Visual Studio compiler bug (Connect Id #730878 ).
vor 12 Jahren
Sam Hocevar
64f6c5818b
test: that cast was necessary, after all...
vor 12 Jahren
Sam Hocevar
03250fa321
test: remove a useless cast.
vor 12 Jahren
Sam Hocevar
db728e48fe
threads: change Queue to a template so that we can manage the element type.
vor 12 Jahren
Sam Hocevar
57df2357de
math: try to implement the magic getter/setter pattern. BREAKS BUILD.
vor 13 Jahren
Sam Hocevar
d38a79ee3d
math: move most vector and matrix member functions to global functions.
vor 13 Jahren
Sam Hocevar
215b6c2065
test: unroll the Mandelbrot loop to gain a few milliseconds per frame, and
increase the maximum iteration count to 340.
vor 13 Jahren
Sam Hocevar
608f52eefb
test: proper multithreading in the Mandelbrot tutorial.
vor 13 Jahren
Sam Hocevar
94f5450399
test: minor tuning, esp. for the PS3.
vor 13 Jahren
Sam Hocevar
0a113459a5
ps3: start implementing the PS3 threading system, and port the new
Mandelbrot shader code to Cg.
vor 13 Jahren