Sam Hocevar
08fc460668
core: move the Camera class from Orbital to the engine core.
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
cbf13dac65
gpu: temporarily enable alpha blending in the vertex buffer code.
12 years ago
Sam Hocevar
b49ba4ef56
core: prefix some member variables with m_ for clarity.
12 years ago
Sam Hocevar
dc94fce5ed
gpu: activate alpha blending on the Direct3D backend.
12 years ago
Sam Hocevar
6cd8c0ece3
core: fix a bug in the Array class copy constructor, found thanks to
the unit tests.
12 years ago
Sam Hocevar
cf85ee132d
core: dynamic arrays can now have up to 8 typed members.
12 years ago
Sam Hocevar
f23b47a8e2
ps3: start fixing the vertex buffer logic in there.
12 years ago
Sam Hocevar
e1070c3b3c
debug: do not use std::abort() on the PS3.
12 years ago
Sam Hocevar
28b3a4f639
gpu: implement a few CG calls.
12 years ago
Sam Hocevar
9f7993d21c
core: add copy constructor and assignment operator to Array.
12 years ago
Sam Hocevar
bed2d554c1
math: new mat3::scale() and mat4::scale() methods.
12 years ago
Sam Hocevar
3e3b254423
math: implement rotate() for mat3 in addition to mat4.
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
9960f73351
gpu: normalize 8-bit integer data in 0..1 by default.
12 years ago
Sam Hocevar
a327302484
gpu: fix Direct3D handling of float3x3 uniforms; they need padding.
12 years ago
Sam Hocevar
9dad69c630
math: allow to easily create a 4x4 matrix from a 3x3 matrix, and so on.
12 years ago
Sam Hocevar
56d7f24a37
core: Append() was missing for arrays of single element structs.
12 years ago
Sam Hocevar
f1c0e3ba4e
gpu: add methods to send mat2 and mat3 matrices to the shader.
12 years ago
Sam Hocevar
be4935c19c
math: add code to build the normal matrix from a transformation matrix.
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
bc5bf62886
gpu: assume 8-bit unsigned vertex data is expected to be normalised on 0-1.
12 years ago
Sam Hocevar
b979030f95
core: fix a bug in the Array class where we would corrupt the data when
trying to realloc the array and insert a reference to a member of our own.
12 years ago
Sam Hocevar
8894958f0e
gpu: fix a stupid signed/unsigned inconsistency causing vertex declaration
creation failures.
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
b6c330f3d8
gpu: remove old code in VertexBuffer that caused a memory leak.
12 years ago
Sam Hocevar
18cd98fe91
core: add a dynamic Array class.
12 years ago
Sam Hocevar
02e31f5c41
core: add a simple Array template class.
12 years ago
Sam Hocevar
fe9bab81c1
gpu: fix a great lot of Direct3D problems, spotted using PIX.
12 years ago
Sam Hocevar
8da2f504a8
debug: use std::abort() instead of a custom idiocy.
12 years ago
Sam Hocevar
4e4d5a8e06
build: fix GCC build; it doesn't like to have a local file called debug/debug.h.
12 years ago
Sam Hocevar
48c7070243
gpu: replace exit(0) in D3D error checks with lol::Abort().
12 years ago
Sam Hocevar
0d49891632
gpu: fix a nasty bug in the D3D9 vertex declaration code that caused
wrong offset computations.
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
b34088e5bd
math: add mat2 and mat3 types; they'll be useful.
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
560d5cc6be
gpu: fix the core scene renderer.
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
3ab2f621f8
gpu: fix compilation errors and warnings in the vertex declaration code.
12 years ago
Sam Hocevar
5218c59ab7
gpu: start working on a template-based vertex buffer class.
12 years ago
Sam Hocevar
5014b90b3e
build: compilation fixes for errors introduced in the recent Direct3D
and Android changes.
12 years ago
Sam Hocevar
57f393d0d3
gpu: port the texture and scene handling code to Direct3D. Not functional.
12 years ago
Sam Hocevar
15c4e8016a
android: slightly update Android project for newer SDK versions.
12 years ago
Sam Hocevar
64da211c62
math: do not use #pragma diagnostic push for GCC prior to 4.6.
12 years ago
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 years ago
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 years ago
Sam Hocevar
88f10fe54b
build: allow to build the Direct3D 9 driver with the mingw compiler.
12 years ago