Vladimír Vondruš
a4a962f686
Math: fixed matrix tests (spotted by Clang).
...
Either GCC 4.8 poorly implements C++11 or it already has support for
some proposed C++14 feature, which allows to elide successive
initializer braces.
13 years ago
Vladimír Vondruš
06d707f25c
Shape rework #8 : updated documentation.
13 years ago
Vladimír Vondruš
6d8639cc76
Physics shape rework #7 : renamed Physics namespace to Shapes.
13 years ago
Vladimír Vondruš
3b861f6f64
SceneGraph: added Object::setParentKeepTransformation().
13 years ago
Vladimír Vondruš
9881320599
Physics: complete the definition for ShapeGroup.
13 years ago
Vladimír Vondruš
22a4ddfbd4
Physics shape rework #6 : removed unneded overload, fixed the original.
13 years ago
Vladimír Vondruš
c089fce239
Physics shape rework #5 : renaming.
...
ObjectShape* is now Shape*, ShapeGroup is now Composition.
13 years ago
Vladimír Vondruš
b063461a73
Physics: better diagnostics in ShapeGroup::get().
13 years ago
Vladimír Vondruš
2cceafed3c
DebugTools: adapted ShapeRenderer to Physics changes.
...
Now using const reference to the shape instead of non-const one, also
removed some duplicated code and unneeded includes from the switch,
these operations are done in renderer implementations themselves.
13 years ago
Vladimír Vondruš
d9bc507e00
Physics shape rework #4 : new ObjectShape implementation.
...
The feature is now templated on shape type, which makes it actually
useful, as it is possible to conveniently query shape parameters from
it. It has now non-templated base and ObjectShapeGroup operates only
with it.
13 years ago
Vladimír Vondruš
ebbb5b6e5e
Physics shape rework #3 : made shape constructors implicit.
...
Allows to use them in (future) ObjectShape construction without unneded
verbosity:
new Physics::ObjectShape<Physics::Point2D>(o, {{1.0f, -2.5f}});
instead of:
new Physics::ObjectShape<Physics::Point2D>(o, Physics::Point2D(...));
13 years ago
Vladimír Vondruš
8deb22061d
Physics shape rework #2 : new implementation of ShapeGroup.
...
This class now stores the tree in flat array, making it easier for user
to query the contents, but the internals are much more complicated. This
solution already reduces allocation count by count of nodes in the tree,
future work might remove the per-shape allocation altogether by using
large typeless array and placement-new etc.
13 years ago
Vladimír Vondruš
b29f736363
Physics shape rework #1 : simplified implementation of base shapes.
...
Currently only the tests for particular shapes work, everything else is
broken.
13 years ago
Vladimír Vondruš
446b108bde
Added TODOs.
13 years ago
Vladimír Vondruš
a21fd0df07
Math: ability to convert matrices from/to external representation.
13 years ago
Vladimír Vondruš
0249c6f8a8
SceneGraph: make method chaining in Abstract* transformations usable.
13 years ago
Vladimír Vondruš
69c0c19ad2
Fixed off-by-one error in Buffer state tracking.
...
I have no idea why there is one more value than needed.
13 years ago
Vladimír Vondruš
a9e37fc0f9
Method chaining in ResourceManager.
13 years ago
Vladimír Vondruš
53f26fdde0
modules: find outdated header names.
...
Changed most of them to names which shouldn't change in the future.
13 years ago
Vladimír Vondruš
961cc58d56
Fixed platform documentation.
13 years ago
Vladimír Vondruš
ff82d71c6e
SceneGraph: link test library only to Math library.
...
Should significantly speed up incremental compilation.
13 years ago
Vladimír Vondruš
103b2b0c95
Added missing primitive types to Mesh debug and configuration output.
13 years ago
Vladimír Vondruš
31ce072f39
Math: added initializer list overloads for min() and max().
...
Hopefully including <algorithm> doesn't do much harm to compilation
time.
13 years ago
Vladimír Vondruš
ffb0ed5fe7
Fixed and updated forward declarations for queries.
13 years ago
Vladimír Vondruš
2447ca9fb5
Added some TODOs.
13 years ago
Vladimír Vondruš
63245ae457
Fixed various superflous spaces and newlines in Shader error messages.
...
The debug classes are long overdue for total rework. This isn't usable.
13 years ago
Vladimír Vondruš
d3ebbabb27
Properly count line numbers in shaders.
...
Now line 41 of third added file is marked as 3(41). Source 0 is the
`#version` string added in Shader constructor.
Huh, deinlining that Shader::addSource() function also significantly
reduced debug binary sizes.
13 years ago
Vladimír Vondruš
f85f067192
Greatly simplified Query implementations.
...
All work is now done in AbstractQuery, subclasses define only
strongly-typed interface around it. No heap allocations, no virtual
destructors needed. Added also asserts into result(), begin() and end()
to harden the implementation.
13 years ago
Vladimír Vondruš
5f00a1926d
Split Query into PrimitiveQuery and TimeQuery.
...
It's better to group the queries on functionality and not common code.
13 years ago
Vladimír Vondruš
b85f50ffab
Platform::Sdl2Application: properly handle SDL_QUIT.
...
F'ed up in 6fd8dc86ad , the app didn't
respond to closing the window.
13 years ago
Vladimír Vondruš
fd4ada4fc1
Method chaining in Shader.
...
The methods return reference instead of pointer, as the class is
commonly created on the stack. Removed static functions
Shader::fromFile() and Shader::fromData(), as they are not needed now.
Also asserting that the file exists and is readable in addFile().
13 years ago
Vladimír Vondruš
30100c1b73
Added missing values to Mesh::Primitive.
...
Now we might fully support Geometry and Tessellation Shaders, hopefully.
13 years ago
Vladimír Vondruš
a191e1287f
Added some more Doxygen workarounds.
...
Forgotten in 3f891cfa7c .
13 years ago
Vladimír Vondruš
623fda0dc7
Shaders: removed superfluous `*Shader` suffix from class names.
13 years ago
Vladimír Vondruš
e147cc3992
Doc++, TODO++
13 years ago
Vladimír Vondruš
3f891cfa7c
Removed unneeded `extern class`, added export macros to proper place.
...
Leftover from c4f321d911 , don't know at
all why and how that happen.
13 years ago
Vladimír Vondruš
7ef8432fbe
Doxygen: ignore specific namespaces instead of whole directories.
...
Less maintenance burden with `#ifndef DOXYGEN_GENERATING_OUTPUT`,
removed the ones which are not needed anymore.
13 years ago
Vladimír Vondruš
27b6534e78
Added TODO.
13 years ago
Vladimír Vondruš
932b9f4377
Method chaining in Buffer.
13 years ago
Vladimír Vondruš
5c550bb66a
Force OpenGL ES 2.0 target if building for Emscripten.
13 years ago
Vladimír Vondruš
c2a5919b5a
Force static build if building with NaCl's newlib.
13 years ago
Vladimír Vondruš
33ad4b0cff
Platform::Sdl2Application: just wait for next event.
...
No need to loop over when SDL has function designed to do this.
13 years ago
Vladimír Vondruš
6fd8dc86ad
Platform: moved Sdl2Application event loop into separate function.
...
Allowing it to be called perodically from some callback.
13 years ago
Vladimír Vondruš
b40c5ece39
MeshTools: don't create reference from rvalue.
...
Spotted by Emscripten/Clang, not found when running clang normally.
13 years ago
Vladimír Vondruš
1eb5e8c966
Updated NaCl-related documentation and stuff.
13 years ago
Vladimír Vondruš
c5c57e17da
Emscripten: ported FindOpenGLES2.cmake and FindSDL2.cmake.
...
SDL headers are now included relatively.
13 years ago
Vladimír Vondruš
bab0c96846
Method chaining in Timeline.
13 years ago
Vladimír Vondruš
922b93311e
Don't use `constexpr` in Timeline.
...
There is no point in using this class at compile-time. Ever. Moreover
clang called through Emscripten complains that it cannot be constexpr.
Clang called normally doesn't complain, don't know why.
13 years ago
Vladimír Vondruš
69662e4923
Updated FindCorrade.cmake and FindNodeJs.cmake from Corrade repository.
13 years ago
Vladimír Vondruš
458e146765
Math: std::fma() is not available in NaCl's newlib.
13 years ago