Sam Hocevar
03c17fcae4
base: clean up and refactor containers.
The containers no longer force the user to use the ptrdiff_t type for
size information. For convenience, size() now always returns an int,
and the size_s() method offers a way to handle arrays with more than
2 billion elements. Internally, we still use ptrdiff_t, though.
Since so much code had to be changed, I took the opportunity to get
rid of capitalised accessors for classes that are lowercase.
il y a 9 ans
Benjamin ‘Touky’ Huet
a8642c05c2
small buildfix in lolunit
il y a 9 ans
Sam Hocevar
af3ca562b9
lolremez: fix wrong argument parsing and improve error messages.
il y a 9 ans
Sam Hocevar
24cbf425c2
lolunit: unit tests now display a meaningful report in Visual Studio.
il y a 9 ans
Sam Hocevar
f791b672ed
misc: lots of compilation fixes for Visual Studio (related to mediocre
support for enable_if and other template metaprogramming techniques),
for Clang (related to static const template class member initialisation)
and for GCC (related to forward declaration of non-int enum classes).
il y a 9 ans
Sam Hocevar
4e76c6e708
lolremez: shorter code in the expression parser.
il y a 10 ans
Sam Hocevar
29d65231f3
lolremez: add thread workers for slightly faster convergence.
il y a 10 ans
Sam Hocevar
288bec4312
lolremez: add more timing information for the linear system solving.
il y a 10 ans
Sam Hocevar
a07844682e
build: remove dead PS3 code.
il y a 10 ans
Sam Hocevar
5f953f40ad
lolremez: various tweaks.
il y a 10 ans
Sam Hocevar
a46354472d
lolremez: add abs() function, implement full high-precision floating
point parsing, add support for unary plus and minus.
il y a 10 ans
Sam Hocevar
d3a775738d
lolremez: use successive parabolic interpolation for extrema search.
il y a 10 ans
Sam Hocevar
19727c3ddf
lolremez: tweak code so that it builds on Windows (remove unsupported C++/Unix features).
il y a 10 ans
Sam Hocevar
afc62a5399
lolremez: useless refactoring.
il y a 10 ans
Sam Hocevar
0e71596def
lolremez: greatly improve root search times by using simple regula falsi.
il y a 10 ans
Sam Hocevar
50c2b4b46e
lolremez: allow spaces in arithmetic expressions.
il y a 10 ans
Sam Hocevar
506b0e21e1
lolremez: implement a mathematical expression evaluator.
il y a 10 ans
Sam Hocevar
d812101ae5
math: add vec5, vec6, etc. types up to 12 for convenience.
il y a 10 ans
Sam Hocevar
364014c6e7
lolremez: minor cosmetic changes and comments.
il y a 10 ans
Sam Hocevar
0522730f12
lolremez: use array2d for the linear system solver.
il y a 10 ans
Sam Hocevar
da26809df9
lolremez: use the polynomial composition provided by the engine.
il y a 10 ans
Sam Hocevar
d34f0e2991
lolremez: simplify the Remez solver by using our new polynomial class.
il y a 10 ans
Sam Hocevar
d373081b80
build: use #pragma once instead of header guards because 1) fuck the dinosaurs,
and 2) fuck the Visual Studio compiler that crashes when confused.
il y a 10 ans
Sam Hocevar
cd988786b9
build: reorganise includes so that we can use precompiled headers later.
il y a 10 ans
Sam Hocevar
6b64e2c337
lolunit: switch assert macros to lowercase.
il y a 10 ans
Sam Hocevar
cadc4d18b0
test: move the unit tests to the engine, and lolunit out of the engine.
il y a 10 ans
Sam Hocevar
7cf72fd16e
base: add a simple tuple implementation.
il y a 10 ans
Sam Hocevar
5dc05d7f3e
build: remove empty directories and add proper svn:ignore flags.
il y a 10 ans
Sam Hocevar
7a28671dee
math: get rid of the base_vec* classes (thanks to relaxed unions), rename
MASK to SWIZZLE in the vector templates, rename matrix<> to mat<> for
consistency, implement transposition for all matrix sizes, make matrix
columns private and only accessible through operator[].
il y a 10 ans
Sam Hocevar
31738409d9
math: add shortcuts and syntax colouring for mat3x4, mat3x2, etc.
il y a 10 ans
Sam Hocevar
fe665f85b4
base: strip core.h from its contents and put it in public/private headers.
il y a 10 ans
Sam Hocevar
398ee1b4d5
base: use lol::array in most places.
il y a 10 ans
Sam Hocevar
7e9f926c43
base: switch map, hash, array2d and array3d to lowercase, like standard
C++ containers.
il y a 10 ans
Sam Hocevar
d982b67aaa
image: add methods to save images and a small test program.
il y a 10 ans
Sam Hocevar
76740f77bc
math: remove some vector constants that were a bit too specific.
il y a 10 ans
Sam Hocevar
2c2ea82f8f
vimlol: add "UNUSED" and "ASSERT" to our list of keywords.
il y a 10 ans
Sam Hocevar
8b2439f127
vimlol: highlight our maths constants F_PI, D_PI etc. in vim.
il y a 10 ans
Benlitz
246af694d8
removed vs2010 solution, migrated all projects to 2012. VsLol stays on 2010 for compatibility and now has its own sln.
il y a 11 ans
Sam Hocevar
8e732627d2
lolremez: add missing matrix.h implementation.
il y a 11 ans
Sam Hocevar
d0ebacf545
lolremez: simplify the solver class.
il y a 11 ans
Sam Hocevar
90706c8d44
lolremez: move some LolRemez matrix functions out of the engine.
il y a 11 ans
Sam Hocevar
f9840e3458
lolremez: move LolRemez out of the engine, it's really too specific.
il y a 11 ans
Sam Hocevar
0c17fcb8cd
vslol: mark version 1.0.2.0.
il y a 11 ans
Sam Hocevar
98746e418c
vslol: ignore Sony VSE plugin classifier madness.
il y a 11 ans
Sam Hocevar
68ae1dd35e
vslol: disable funky debug colouring in .lolfx files.
il y a 11 ans
Sam Hocevar
62fae5dedb
vimlol: fix typo.
il y a 11 ans
Sam Hocevar
96e26a2bd5
math: rename Box2D to "box2" and add an integer version, "ibox2".
il y a 11 ans
Sam Hocevar
5c1389ee2d
vslol: fix a few code quality issues.
il y a 11 ans
Sam Hocevar
a6ade16534
vslol: add HLSL types to the Lol Engine types and update version.
il y a 11 ans
Sam Hocevar
781c355b44
vslol: highlight Lol Engine types if the solution name is Lol.sln.
il y a 11 ans