Vladimír Vondruš
a22bf1bf4e
Shaders: don't use explicit attribute location on GL 2.1.
13 years ago
Vladimír Vondruš
1d88310521
Shaders: off-by-one error.
...
Explicit attrib location is supported on GLSL >= 130, not >= 120.
13 years ago
Vladimír Vondruš
b7b955289a
Math: Vector::lerp() can take `t` of arbitrary type.
...
Usable when interpolating e.g. colors in denormalized integral form, as
`t` could be only `0` or `1` in that case, which is pretty unusable.
13 years ago
Vladimír Vondruš
4c3e80b4f1
SceneGraph: added AbstractObject::transformationMatrix().
...
Complement for Object::transformation(), usable from features which
don't want/need to upcast AbstractObject pointer.
13 years ago
Vladimír Vondruš
861e16e1f9
Doc++, @todo+-
13 years ago
Vladimír Vondruš
f16a9d8310
Shorter convenience overload for ResourceManager::set().
13 years ago
Vladimír Vondruš
8ce184ef7b
Debug output for AbstractImage::Format and AbstractImage::Type enums.
13 years ago
Vladimír Vondruš
d175dd1054
Updated workarounds for Doxygen 1.8.2.
...
Removed workarounds for alias templates, variadic templates and
anonymous enums, but 1.8.2 has some bug with forward declarations
causing classes to appear in default namespace, breaking
cross-references.
13 years ago
Vladimír Vondruš
6e61354fde
OpenGL ES compilation fixes.
13 years ago
Vladimír Vondruš
c003f0499d
Assert when improper pixel type is passed to AbstractImage::pixelSize().
13 years ago
Vladimír Vondruš
c8cfa467c0
SceneGraph: actually call animationStopped() after duration is exceeded.
13 years ago
Vladimír Vondruš
8d71d12187
SceneGraph: animationStopped() should be called after duration is exceeded.
...
The test currently fails.
13 years ago
Vladimír Vondruš
d5a8cc0e3c
DebugTools: fixed compilation of Profiler.
...
Some change in recent GCC (4.7.2) caused this to fail building, now
using duration_cast<microseconds>() instead of microseconds(). Also
cleaned up the code by importing std::duration prefix.
13 years ago
Vladimír Vondruš
9ffb8081f3
Got rid of TypeTraits class altogether.
13 years ago
Vladimír Vondruš
976377f0a4
Moved code to check allowed attribute types to internal implementation.
...
TypeTraits class is now not needed at all.
13 years ago
Vladimír Vondruš
a9d25c995f
Mesh: fixed attribute stride computation.
...
The stride was computed always for resulting GLSL type (e.g. vec4) even
if the data were of anoother type (e.g. std::uint8_t[4]). The code is
exceptionally ugly now, time to wrap it with unit tests.
13 years ago
Vladimír Vondruš
f4146bea94
Forgot to rename this to match OpenGL name.
...
It was named this way in the docs, but in the actual code not. Don't
know why.
13 years ago
Vladimír Vondruš
fbeb7b02bc
Minor renaming in shader/mesh guts.
...
Function size() will be used later for commputing size of the attribute,
renaming the original to components().
13 years ago
Vladimír Vondruš
b13d8644b4
Replaced scalar normalization code in Color with Math::[de]normalize().
13 years ago
Vladimír Vondruš
263d8351b6
Math: vector overloads for normalize() and denormalize().
13 years ago
Vladimír Vondruš
ec23a3d13c
Minor code cleanup.
13 years ago
Vladimír Vondruš
ad9a55a867
Doc++
13 years ago
Vladimír Vondruš
4d6d3fde88
Math: scalar/vector implementation of min(), max() and clamp().
...
This is gonna be some ugly template hell.
13 years ago
Vladimír Vondruš
ee5f8766af
Math: make type traits aware of long double.
13 years ago
Vladimír Vondruš
bdba6b7221
Math: no need to have two versions of denormalize(), they are the same.
...
Overlooked in cade175304 .
13 years ago
Vladimír Vondruš
3daefd70a9
Math: simplified internal pow<n>() implementation.
13 years ago
Vladimír Vondruš
2f2d4a4dfd
Removed Magnum::Type and related functionality.
...
The enum is finally completely reimplemented for specific cases with
proper values (Mesh attribute types, index types, pixel types, ...). The
rest currently remaining in TypeTraits.h is used only in Mesh and
AbstractShaderProgram, probably will be moved there.
13 years ago
Vladimír Vondruš
03789a5b4b
Math: got rid of MathTypeTraits::NumericType.
...
Was workaround for printing chars with Corrade::Utility::Debug as
integers, not needed anymore.
14 years ago
Vladimír Vondruš
a4da7b764a
Adapted to Corrade changes.
14 years ago
Vladimír Vondruš
5ca096512e
Forward declaration header for Math namespace.
14 years ago
Vladimír Vondruš
cade175304
Math: finally implemented precise signed/unsigned normalization.
...
(De)normalization from/to [0, 1] for unsigned types and from/to [-1, 1]
for signed types. -1.0 is always denormalized to min+1.
Also updated some tests for Color, as they depended on previous
imprecise implementation.
14 years ago
Vladimír Vondruš
7dc0fc4a4c
Math: Renamed Math.h to Functions.h
...
Math.h is reserved for forward declaration header.
14 years ago
Vladimír Vondruš
3b5b7c71d4
Debug output and configuration value handler for IndexedMesh::IndexType.
...
Mostly copy of what was already done for Type enum.
14 years ago
Vladimír Vondruš
98781b5052
Support for gaps in MeshTools::interleave().
14 years ago
Vladimír Vondruš
42f5ee4ce4
Doc++
14 years ago
Vladimír Vondruš
c8ef795cce
Removed SizeTraits, SizeBasedCall and related mess.
...
The implementation was really frightening and it was really used only in
MeshTools::compressIndices(). Other classes like SizeTraits, Pow and Log
were just waiting to be deleted, nothing of value was lost.
14 years ago
Vladimír Vondruš
ca24fe8f41
Mesh index type cleanup.
...
Using specialized enum instead of global Type and shitload of type
traits to handle it correctly. Removed TypeTraits::indexType() and
cleaned up MeshTools::compressIndices() while at it.
14 years ago
Vladimír Vondruš
9a571abb37
Added OES_element_index_uint ES2 extension to the list.
14 years ago
Vladimír Vondruš
7d0a523618
Moved projection matrix computation to Math namespace.
14 years ago
Vladimír Vondruš
f83c2b601b
Implemented ARB_texture_storage.
...
Equivalent functionality is in ES3 and also EXT_texture_storage ES2
extension.
14 years ago
Vladimír Vondruš
c8444bdbbe
Added EXT_texture_storage ES2 extension to the list.
14 years ago
Vladimír Vondruš
23d481afb7
Doc++
...
Not using @copydoc for Texture derivatives but linking manually instead.
It looks better and doesn't have mixed up irrelevant information.
14 years ago
Vladimír Vondruš
52300cf402
Math: function for base-2 logarithm.
...
Verbatim copy from Corrade, might be better to have it here too
(possibly some SIMD optimizations?).
14 years ago
Vladimír Vondruš
08d9f65b06
Text: assert that {ARB,EXT}_texture_rg is supported.
...
EXT_texture_rg is not available on my OpenGL ES 2.0 implementation, will
find alternative later. At least it now compiles.
14 years ago
Vladimír Vondruš
9ad15b12fb
Mark ARB_invalidate_subdata as done.
14 years ago
Vladimír Vondruš
eaa87147d4
Doc++
...
This is how it should like after debug renderer rework. Don't know what
got forgotten or messed up.
14 years ago
Vladimír Vondruš
35a918d050
Extension-aware Buffer and *Texture data invalidation.
...
If ARB_invalidate_subdata is not available, these functions do nothing,
instead of crashing on null pointer dereference. It results in more
convenient usage, enabling users to call them whenever they want,
improving performance on implementations which supports that.
14 years ago
Vladimír Vondruš
03f6095b9d
Forgot to hide DSA functions when targetting ES.
14 years ago
Vladimír Vondruš
78bfe51966
Fixed compiler warnings.
14 years ago
Vladimír Vondruš
3829401e45
Fixed compilation on ES2.
14 years ago