Sam Hocevar
12aaff89e3
base: huge refactor in vector.h; GCC compilation times down by 50%.
10 anni fa
Sam Hocevar
fe665f85b4
base: strip core.h from its contents and put it in public/private headers.
10 anni fa
Sam Hocevar
398ee1b4d5
base: use lol::array in most places.
10 anni fa
Sam Hocevar
18254349aa
image: gather pixel-related types and enums into a single pixel.h header.
10 anni fa
Sam Hocevar
da6b3d5cd0
scenegraph: Entity::TickDraw() now provides a reference to the current
scene so that g_scene can be deprecated later.
10 anni fa
Sam Hocevar
0bd3f1d9ef
input: fix or disable input code in side projects so that everything builds.
11 anni fa
Benlitz
f104674963
gpu: removed attribute name, everything works using semantic only now. For glsl, semantic is determined from the attribute name which must follow this pattern: in_[Semantic][index], index being optional. Note: this may break most of the projects although I tried to updated every shader accordingly
11 anni fa
Lolbot
c47d0f8c62
fixed 10 files out of 2754:
- removed 386 CR characters
- removed 4 trailing whitespaces
- replaced 189 tabs with spaces
11 anni fa
Benlitz
a7aac24c46
Completely reworked input system. Unified device interface, button, axis and cursor support, controller and binding system, mouse capture. Tutorial 07_input provided. Require to compile lolcore with LOL_INPUT_V2 to be activated (also needed app-side before including core.h)
11 anni fa
Sam Hocevar
6a8118cb18
build: put tutorials and lol.js in a new "demos" directory.
11 anni fa
Sam Hocevar
f14ac4a2c6
tutorial: make the fractal tutorial build when no threads are available.
11 anni fa
Sam Hocevar
c1428fc1f9
input: support up to 32 mouse buttons.
11 anni fa
Sam Hocevar
7e8edd7c3e
sys: add the base source directory to the list of search directories
on automake platforms, too.
11 anni fa
Sam Hocevar
16d53895fa
math: remove coercion rules in the vector classes, they increase the
compilation time for very little benefit and maybe even confusion.
11 anni fa
Sam Hocevar
42fb9b6853
gpu: support 1-component (luminance) textures.
11 anni fa
Sam Hocevar
3adf42b00c
build: hide LolFx external declarations behind macros.
12 anni fa
Sam Hocevar
bbf72e1a64
core: pass the project directory to the binary build and get rid of
that 2-year old "temporary Win32 hack".
12 anni fa
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.
12 anni fa
Benjamin ‘Touky’ Huet
c7219ff1dd
New year copyright update.
12 anni fa
Sam Hocevar
d6634da83f
build: fix the WTFPL site URL in all code comments.
12 anni fa
Sam Hocevar
57c2805351
math: reimplement min(), max(), abs() and fmod() in the lol:: namespace to
avoid conflicts with the C++ stdlib.
12 anni fa
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.
12 anni fa
Sam Hocevar
8a688a7d50
misc: compilation fixes for Windows, X360 and PS3 introduced by the
texture class refactor.
12 anni fa
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.
12 anni fa
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.
12 anni fa
Sam Hocevar
c5b10f5e9a
tutorial: flatten the fractal computation loop, and avoid the use of
new/delete when our arrays will do.
12 anni fa
Sam Hocevar
d4c0c005d6
math: refactor real number constant declarations so that they are only
computed on demand with static initialisation.
12 anni fa
Sam Hocevar
03e83798eb
build: fix the Raspberry Pi build and add a build script for it.
12 anni fa
Sam Hocevar
c5915aa35c
tutorial: use real numbers in the fractal navigation (doubles are still
used in the fractal computation).
12 anni fa
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.
12 anni fa
Sam Hocevar
b5563ad21d
core: switch the Win32/x64 binaries to the Windows subsystem so that they
do not open a console at startup.
12 anni fa
Sam Hocevar
951c93ab84
data: fix ascii.png search path.
12 anni fa
Sam Hocevar
5008482e54
tutorial: remove dead code in 11_fractal.
12 anni fa
Sam Hocevar
3389ed69a2
build: move all games to a "games" subdirectory to clean up the root
directory layout mess.
12 anni fa
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.
12 anni fa
Sam Hocevar
28728814cc
core: replace usage of sin() or std::sin() with lol::sin() where appropriate.
12 anni fa
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.
12 anni fa
Sam Hocevar
a71562bd83
core: rename f64vec4 to dvec4 etc. for consistency with GLSL.
12 anni fa
Sam Hocevar
ee7dd6a699
misc: move more shaders to .lolfx files.
12 anni fa
Sam Hocevar
4770daf4ac
math: replace len(vec) with length(vec) to match the GLSL naming.
12 anni fa
Sam Hocevar
90bfc79b22
core: tick methods now use seconds, like any sane system.
12 anni fa
Sam Hocevar
b49ba4ef56
core: prefix some member variables with m_ for clarity.
12 anni fa
Sam Hocevar
24626c671f
tutorial: some refactoring in the tutorials.
12 anni fa
Sam Hocevar
a54bb70d64
build: minor Windows compilation fixes.
12 anni fa
Sam Hocevar
6169c874e4
gpu: port the vertex buffer abstraction layer to OpenGL.
12 anni fa
Sam Hocevar
2601c970a2
gpu: refactor the vertex declaration code to allow several vertex streams.
12 anni fa
Sam Hocevar
8f0fc94027
tutorial: fix a compilation error and remove now useless vector type casts.
12 anni fa
Sam Hocevar
701eb778a3
tutorial: fix the texture swizzling for the fractal viewer on Xbox 360.
12 anni fa
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.
12 anni fa
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.
12 anni fa