Vladimír Vondruš
bfbaa79e7b
Better documentation for primitives.
14 years ago
Vladimír Vondruš
9e24a7bca0
Don't return Matrix3 from Matrix4 member functions.
...
Matrix3 is for 2D affine transformations, while Matrix4 is for 3D.
Returning Matrix3 would allow doing this, which isn't meaningful
operation at all:
Matrix4 transformation;
Vector2 wtf = transformation.rotationScaling().translation();
14 years ago
Vladimír Vondruš
6895611f9b
Fixed ResourceManager example.
14 years ago
Vladimír Vondruš
949b092a60
Support for '0' and '1' constants in swizzle() functions.
...
Also deconfused related documentation a bit.
14 years ago
Vladimír Vondruš
77c0ab9cd4
2D/3D alternatives of collision detection shapes.
14 years ago
Vladimír Vondruš
b68a168fcb
Doc: crosslinking 1D/2D/3D alternatives.
14 years ago
Vladimír Vondruš
c820cbeee6
Point*D overload for Matrix subclasses.
14 years ago
Vladimír Vondruš
6aa7e3e806
Added Point*D::vector() function.
...
Equivalent to xy() and xyz(), useful for seamless 2D/3D integration.
14 years ago
Vladimír Vondruš
9feb8d32a5
Overloaded operators also for Point2D and Point3D.
14 years ago
Vladimír Vondruš
5b7ffedce3
Fixed serious copypasta error.
...
It's weird that it was working until now.
14 years ago
Vladimír Vondruš
2c0995cf26
2D equivalents of Geometry::Distance functions.
...
Also using std::sqrt() instead of sqrt() (has overloads for float).
14 years ago
Vladimír Vondruš
f4bc8b6174
Physics: Fixed Box shape compilation, added missing unit test.
14 years ago
Vladimír Vondruš
e114fc12df
Hide Matrix::ij() reimplementation from documentation.
14 years ago
Vladimír Vondruš
04d58b3dbd
Fixed collision detection boolean/logical operations confusion.
...
Current implementation provided logical operations as if it were boolean
operations, which is wrong. Booleans might (or might not) be implemented
in the future, but currently the logical are enough.
14 years ago
Vladimír Vondruš
b2679d32f8
MeshTools: added transform() function.
...
In the future it will use multithreading/GPU transform feedback for
large arrays.
14 years ago
Vladimír Vondruš
b53759fb21
Doc++
...
* Grouping lengthy documentation into "Feature overview" page.
* Link only to example index, where all the disclaimers are.
* Also minor documentation updates.
14 years ago
Vladimír Vondruš
55d9b5ae84
MeshTools::interleave(): specialization for only one attribute array.
...
Also minor documentation fixes.
14 years ago
Vladimír Vondruš
fb70ef046a
Functions for getting translation part of the matrix.
14 years ago
Vladimír Vondruš
71784a777c
Functions for getting 2D rotation and scaling part of 3x3 matrix.
...
Crosslinked the documentation with 2D/3D alternatives and
"setters"/"getters".
14 years ago
Vladimír Vondruš
f637106727
Initial version of resource manager.
14 years ago
Vladimír Vondruš
e99a63f38e
Doc++
14 years ago
Vladimír Vondruš
02f0de619a
Method chaining for Mesh.
14 years ago
Vladimír Vondruš
04829da616
Mesh::setFrontFace() should be static (and inline).
14 years ago
Vladimír Vondruš
67c83507be
Added simple guide for contributions.
14 years ago
Vladimír Vondruš
a385441c02
Moved type conversion constructor from Vector to RectangularMatrix.
14 years ago
Vladimír Vondruš
5d639095ee
Removed "wontfix" TODOs.
...
Loop unrolling is better to leave up to the compiler, as it will do it
automatically and it doesn't add any maintenance burden. Constexpr
addition, multiplication etc. of Vector would be nice, but will that be
really useful? Maybe once if at all?
14 years ago
Vladimír Vondruš
391e721ac6
Cache-oblivious traversing order in Matrix functions.
...
Loop through all cols, then rows, so the memory is accessed
continuously.
14 years ago
Vladimír Vondruš
03f135e696
Documentation clarification, assertion update.
...
Don't yell at the user all the time.
14 years ago
Vladimír Vondruš
7c17871c90
Assuming the vectors are normalized in Matrix4::rotation().
14 years ago
Vladimír Vondruš
b43a6ee586
Square primitive.
14 years ago
Vladimír Vondruš
90a3b76e05
Have both 2D and 3D alternatives of mesh and object data in Trade.
14 years ago
Vladimír Vondruš
071afa0b7a
Point*D Vector* subclasses for homogeneous coordinates.
...
Vector4 doesn't set W component to one by default anymore, this is now
handled by Point*D itself. This finally allows creating of 2D primitives
and 2D position vectors without messing explicitly with Z = 1.
All classes which should use Point instead of Vector were updated to use
Point instead.
14 years ago
Vladimír Vondruš
b90ba53f2e
Doc++ (positions, not vertices).
14 years ago
Vladimír Vondruš
eb803200d6
Disabled denormalization test for long double altogether.
...
Fails in Debug, but passes in Release mode on my GCC 4.7 @ x86_64. Not
sure what to do about it.
14 years ago
Vladimír Vondruš
7acda40a67
Doc++ (vector components, not values).
14 years ago
Vladimír Vondruš
ce15175c70
Don't show dependent options in CMake if WITH_EVERYTHING is set to ON.
14 years ago
Vladimír Vondruš
7a13e5c873
Added Color3 and Color4 to TypeTraits.
14 years ago
Vladimír Vondruš
619f44347c
Doxygen documentation workarounds.
14 years ago
Vladimír Vondruš
6a4b68410c
Doc: brief introduction to matrix and vector classes.
...
DDD - documentation driven development. Not all advertised features are
available right now, but they will come.
14 years ago
Vladimír Vondruš
4d46fd12cf
Returning references from vector component accessors.
...
Before it has to be done with overly verbose and cumbersome Java-style:
Vector4 vec;
vec.setX(vec.x() + 5);
vec = Vector4(vec.xyz()*2, vec.w());
Now it can be done this way:
vec.x() += 5;
vec.xyz() *= 2;
14 years ago
Vladimír Vondruš
c813a8ae34
More README updates.
14 years ago
Vladimír Vondruš
c50d68c211
Fixed documentation link so it's not redirected to another domain.
14 years ago
Vladimír Vondruš
3b333be0f2
Doc: updated feature list and "Getting started" section.
14 years ago
Vladimír Vondruš
9a391beb96
Doc: updated window context building options.
14 years ago
Vladimír Vondruš
823b39133a
Doc: run `ctest` with `--output-on-failure` rather than `-V`.
14 years ago
Vladimír Vondruš
dfe566886a
SceneGraph: disallow instantiation of Object and Camera base classes.
...
Renamed them to AbstractObject and AbstractCamera to make this more
evident to end user.
14 years ago
Vladimír Vondruš
cef2a19b07
Moved template list of SceneGraph objects into traits class.
...
Beside better readability it is now more future proof, as objects with
double types etc. and new templated types can be added more easily.
14 years ago
Vladimír Vondruš
d4ea960767
Fixed ambiguous function call.
...
Probably only on GCC 4.6, though.
14 years ago
Vladimír Vondruš
00cc00311b
Workarounds for old GLEW versions (tested on 1.6).
...
GLEW defines some extensions on its own and is making mistakes, which
aren't later resolved by including the official header, because the
extension is already defined in glew.h.
Hopefully these are the first and last errors found.
14 years ago
Vladimír Vondruš
b0f640072c
Timeline: sleep for _the rest_ of the frame.
...
This wasn't well tested class.
14 years ago