Sam Hocevar
|
28728814cc
|
core: replace usage of sin() or std::sin() with lol::sin() where appropriate.
|
12 years ago |
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 years ago |
Sam Hocevar
|
c035a1c2b7
|
core: fix a few build warnings and remove useless operators from the
"half" class. The build is now 3% faster.
|
12 years ago |
Sam Hocevar
|
6f73cafa08
|
build: simplify the .lolfx file compilation.
|
12 years ago |
Sam Hocevar
|
c6514fae84
|
test: GLSL syntax fiddling.
|
12 years ago |
Sam Hocevar
|
4a938d239b
|
build: remove \r from shader files before compilation.
|
12 years ago |
Sam Hocevar
|
e7fd8c57e2
|
test: a better GLSL parser in the LolFx test parser.
|
12 years ago |
Sam Hocevar
|
a71562bd83
|
core: rename f64vec4 to dvec4 etc. for consistency with GLSL.
|
12 years ago |
Sam Hocevar
|
e70887f511
|
test: more grammar improvements.
|
12 years ago |
Sam Hocevar
|
39493bebaa
|
test: add most of the GLSL grammar.
|
12 years ago |
Sam Hocevar
|
8a547a254f
|
test: add more GLSL and HLSL keywords to our grammar.
|
12 years ago |
Sam Hocevar
|
8ac8e13b75
|
test: some grammar tweaks.
|
12 years ago |
Sam Hocevar
|
1246eb233f
|
test: start working on a lexer/parser for LolFx using flex and bison.
|
12 years ago |
Sam Hocevar
|
fc618350f6
|
gpu: start working on the LolFx format.
|
12 years ago |
Sam Hocevar
|
6fe12e7811
|
build: ensure .lolfx.cpp files get cleaned up.
|
12 years ago |
Sam Hocevar
|
a4fb64d6c8
|
test: add a few unit tests for datatype sanity.
|
12 years ago |
Sam Hocevar
|
ee7dd6a699
|
misc: move more shaders to .lolfx files.
|
12 years ago |
Sam Hocevar
|
a606290ed2
|
gpu: allow to load a .lolfx file instead of all those shaders.
|
12 years ago |
Sam Hocevar
|
4770daf4ac
|
math: replace len(vec) with length(vec) to match the GLSL naming.
|
12 years ago |
Sam Hocevar
|
d0dbbde159
|
core: allow to concatenate arrays, and add unit tests for that.
|
12 years ago |
Sam Hocevar
|
c276dbb1ff
|
math: allow to write 1.f / q to take a quaternion's inverse.
|
12 years ago |
Sam Hocevar
|
82aaaae62c
|
core: the Array class now properly works with non-POD types.
|
12 years ago |
Sam Hocevar
|
0315413285
|
core: rename Array::Append() to Array::Push() for brevity and arbitrary
personal taste.
|
12 years ago |
Sam Hocevar
|
bbdd59032d
|
test: add matrix determinant and quaternion norm checks in the unit tests.
|
12 years ago |
Sam Hocevar
|
ecda7cd569
|
math: replace mat3::rotate(quat) with an explicit constructor, and add
more unit tests for the quaternion to 3×3 matrix conversion.
|
12 years ago |
Sam Hocevar
|
9e9c18d37e
|
test: add several unit tests for rotations with matrices and quaternions.
|
12 years ago |
Sam Hocevar
|
90bfc79b22
|
core: tick methods now use seconds, like any sane system.
|
12 years ago |
Sam Hocevar
|
fbaf32f1b9
|
core: make timers second-based rather than millisecond-based.
|
12 years ago |
Sam Hocevar
|
8325d8889c
|
math: chage quaternion constructor to wxyz order because it matches the
mathematical writing, and add static constructors to create quaternions
from a rotation.
|
12 years ago |
Sam Hocevar
|
b49ba4ef56
|
core: prefix some member variables with m_ for clarity.
|
12 years ago |
Sam Hocevar
|
c9520d2aca
|
test: add unit tests for the Array class.
|
12 years ago |
Sam Hocevar
|
50fefd0575
|
build: fix the PS3 cross-build; variable name expansion was causing trouble.
|
12 years ago |
Sam Hocevar
|
9262efbac3
|
core: use operator<< instead of operator+= to append stuff to arrays,
it's a bit less confusing.
|
12 years ago |
Sam Hocevar
|
eb51928415
|
math: add inversion code for 2×2 and 3×3 matrices, and transposition
code for all matrices.
|
12 years ago |
Sam Hocevar
|
ad0e3f8b6d
|
tutorial: fix the inconsistent vertex counting.
|
12 years ago |
Sam Hocevar
|
9b0958e6d1
|
tutorial: get rid of a hardcoded value.
|
12 years ago |
Sam Hocevar
|
578368f452
|
gpu: abstraction class for index buffers; the cube tutorial no longer
needs to know about Direct3D headers etc.
|
12 years ago |
Sam Hocevar
|
02e31f5c41
|
core: add a simple Array template class.
|
12 years ago |
Sam Hocevar
|
24626c671f
|
tutorial: some refactoring in the tutorials.
|
12 years ago |
Sam Hocevar
|
fe9bab81c1
|
gpu: fix a great lot of Direct3D problems, spotted using PIX.
|
12 years ago |
Sam Hocevar
|
bfb0ad1e61
|
tutorial: use an interleaved vertex/color buffer.
|
12 years ago |
Sam Hocevar
|
48c7070243
|
gpu: replace exit(0) in D3D error checks with lol::Abort().
|
12 years ago |
Sam Hocevar
|
f7770f7387
|
gpu: add an Unbind() method for textures for clean up. Unfortunately
the Scene code still breaks Direct3D rendering.
|
12 years ago |
Sam Hocevar
|
169a16b63e
|
gpu: move the platform-specific triangle drawing call to the VertexDeclaration
class, so that the calling code does not need to know what the backend is.
|
12 years ago |
Sam Hocevar
|
a54bb70d64
|
build: minor Windows compilation fixes.
|
12 years ago |
Sam Hocevar
|
6169c874e4
|
gpu: port the vertex buffer abstraction layer to OpenGL.
|
12 years ago |
Sam Hocevar
|
f7e202a7c8
|
gpu: implement vertex buffer streams for Direct3D. OpenGL is missing for now.
|
12 years ago |
Sam Hocevar
|
2601c970a2
|
gpu: refactor the vertex declaration code to allow several vertex streams.
|
12 years ago |
Sam Hocevar
|
5218c59ab7
|
gpu: start working on a template-based vertex buffer class.
|
12 years ago |
Sam Hocevar
|
8f0fc94027
|
tutorial: fix a compilation error and remove now useless vector type casts.
|
12 years ago |