Vladimír Vondruš
d03fe4d41d
Limited static polymorphism of EglContext and GlutContext.
...
If being careful, it's now possible to swap GlutContext with EglContext.
GlutContext doesn't have keyReleaseEvent() and many keys, but EglContext
doesn't have e.g. mouseMotionEvent().
14 years ago
Vladimír Vondruš
d5ab207552
Fixed compilation on non-GLES targets (oops).
14 years ago
Vladimír Vondruš
c74551e5c7
Doc++
14 years ago
Vladimír Vondruš
71ed990b9b
New version of swizzle isn't constexpr with old GCC 4.5.
14 years ago
Vladimír Vondruš
2dd0f111db
Merge branch 'master' into compatibility
14 years ago
Vladimír Vondruš
6c111182e1
WTF? sizeof(int) != 8 and sizeof(long long) != 16.
...
F'ed up in 57d6ded237 .
14 years ago
Vladimír Vondruš
1d053cfbc0
Merge branch 'master' into compatibility
14 years ago
Vladimír Vondruš
5c5da2b2f3
Clarified required OpenGL versions for queries.
...
Query depends on 3.0/EXT_transform_feedback (also PRIMITIVES_GENERATED,
even if it wasn't in the specs), only part of SampleQuery requires
3.0/NV_conditional_render, the rest is in 2.1 already.
14 years ago
Vladimír Vondruš
26b6d40a8b
Added separate stencil formats to Renderbuffer.
14 years ago
Vladimír Vondruš
f2dbb9e8d9
Don't copy unneeded from AbstractTexture documentation.
14 years ago
Vladimír Vondruš
9cb27a4dc3
Depth/stencil can be stored only in renderbuffer in OpenGL ES 2.0.
...
Moreover only sized version is permitted.
14 years ago
Vladimír Vondruš
ac5969ee48
Don't copy enum value twice only because preprocessor.
14 years ago
Vladimír Vondruš
e7bb19b70b
Documented unsized internal depth/stencil format.
14 years ago
Vladimír Vondruš
6057693f9a
Clarified required GL version for some Query result types.
14 years ago
Vladimír Vondruš
1ec34457ee
Clarified required GL versions for shader attribute binding.
...
Also updated section names to follow coding style.
14 years ago
Vladimír Vondruš
8456609119
Mention only OpenGL ES (without version).
14 years ago
Vladimír Vondruš
eac99d026e
Conditional render is since OpenGL 3.0.
14 years ago
Vladimír Vondruš
2526f7f777
GL_PRIMITIVES_GENERATED is since OpenGL 3.1.
14 years ago
Vladimír Vondruš
a22bbc9e15
Removed @todo (deprecated in GLES 3.0).
14 years ago
Vladimír Vondruš
88e6221ac3
Better name for parameter in VectorN constructor from VectorN-1.
14 years ago
Vladimír Vondruš
e5a72b25ce
Have non-explicit parameterless constructor for Vector3.
...
So it's possible to return Vector3 as {}.
14 years ago
Vladimír Vondruš
c8aa005e86
Added Color3 and Color4 classes with HSV conversion.
...
They can be used for both floating-point (normalized) and integral
(denormalized) representation and support conversion between them.
HSV conversion is done always using floating-point types.
Getters for RGB(A) were removed from Vector3 and Vector4, they are now
part of Color3 and Color4. Because of this, Framebuffer now accepts
Color instead of Vector.
14 years ago
Vladimír Vondruš
57d6ded237
Added NumericType and FloatingPointType to Math::MathTypeTraits.
...
NumericType is corresponding numeric type with size at least the same as
int. It is used in debug operators for Matrix and Vector to prevent
printing chars as characters.
If the type isn't already floating-point, FloatingPointType is
corresponding larger type with sufficient size for normalization of
given integral type.
Also updated type traits for long types, they are now subclassed either
from int or long long based on sizeof(long).
14 years ago
Vladimír Vondruš
f2ac32341d
Fixed massive bugs in Vector3 and Vector4.
...
"These functions are so simple that no unit test is needed."
14 years ago
Vladimír Vondruš
3bcaed6322
Using round() in denormalization.
...
Gives more precise results for smaller types, but creates overflow for
large types.
14 years ago
Vladimír Vondruš
95ca0754f5
Hide MathTypeTraits implementation in Implementation namespace.
14 years ago
Vladimír Vondruš
06872c7727
Added Vector::min() and Vector::max().
14 years ago
Vladimír Vondruš
37a5d6347e
Vector::angle() now expects normalized vectors.
14 years ago
Vladimír Vondruš
0a0860a9f2
Renamed Vector::lengthSquared() to parameterless Vector::dot().
...
It's now less confusing ("length squared" looks like it's even heavier
than length), but on the other hand it's not so obvious that these two
functions come together.
14 years ago
Vladimír Vondruš
7f55f30ced
CORRADE_ASSERT() now needs semicolon after.
14 years ago
Vladimír Vondruš
cfc955debe
Added Vector::sum(), so product() has a friend.
14 years ago
Vladimír Vondruš
4aa07d3029
Use std:: variants for sin(), cos() and sqrt().
...
They should have overloads for given type, so we're not using doubles
when only float is needed.
14 years ago
Vladimír Vondruš
dc7c5f5fae
Just-to-be-sure static_assert()s for Matrix and Vector size.
14 years ago
Vladimír Vondruš
2553e50444
Functions for normalizing and denormalizing numeric values.
14 years ago
Vladimír Vondruš
bd2cff9e7a
Merge branch 'master' into compatibility
...
Conflicts:
src/Math/Test/SwizzleTest.cpp
14 years ago
Vladimír Vondruš
63f5637c1b
EglContext: MOAR keys!
14 years ago
Vladimír Vondruš
c23022d47f
Another, more convenient way to swizzle.
...
On the other hand everything of this is done at runtime, so it's less
performant than the previous version, mainly when used in loops. When
the result is declared as constexpr, it is done at compile time, just
like the previous version.
I don't know which version to keep, so there will be both until a good
decision.
14 years ago
Vladimír Vondruš
d8ac8452d2
GCC 4.5 compatibility: template aliases are not supported.
14 years ago
Vladimír Vondruš
52177b03e5
Merge branch 'master' into compatibility
14 years ago
Vladimír Vondruš
7669271b56
EglContext: forgot to revert this back.
14 years ago
Vladimír Vondruš
b965dcb01f
Include compatibility modules only for older CMake.
...
Also explicitly set cmake policy to quiet these annoying warnings.
14 years ago
Vladimír Vondruš
cc6a4302a1
Merge branch 'master' into compatibility
14 years ago
Vladimír Vondruš
9d7b3d6d6b
FindMagnum: don't expose internal ${COMPONENT}_INCLUDE_DIR to users.
14 years ago
Vladimír Vondruš
9ea8efe73b
EglContext: Handle window closing.
...
This is the most fucked up way to so fucking simple thing.
14 years ago
Vladimír Vondruš
6c964d703c
EglContext: Handle window resizing.
14 years ago
Vladimír Vondruš
d92df0777e
EglContext: Not sure what this did, but this doesn't affect anything.
...
Was getting out-of-sync with INPUT_MASK, so setting it to 0.
14 years ago
Vladimír Vondruš
ceb116c41c
EglContext: keyboard and mouse handling.
14 years ago
Vladimír Vondruš
b7df327466
EglContext: Show window on exec(), make the context current only once.
14 years ago
Vladimír Vondruš
54f3dc3d99
Small cleanup, fixed small typo.
14 years ago
Vladimír Vondruš
95c2b05a45
...and install new Swizzle.h. Damn.
14 years ago