Vladimír Vondruš
a46b51b11f
Updated for OpenGL ES 2 support.
14 years ago
Vladimír Vondruš
26d70e0eae
Added move constructor and move assignment to Mesh.
14 years ago
Vladimír Vondruš
7f55f30ced
CORRADE_ASSERT() now needs semicolon after.
14 years ago
Vladimír Vondruš
3cd991d04d
Forgot hiding also Mesh function implementation from documentation.
14 years ago
Vladimír Vondruš
c7bb153d0a
Port to OpenGL ES 2.
...
Desktop OpenGL and OpenGL ES 2 support can be switched using CMake
TARGET_GLES option. All functionality not supported in ES is marked in
documentation.
If targetting OpenGL ES, GLES2/gl2.h is included instead of GLEW.
Mesh class now uses VAOs only in desktop OpenGL, in ES the buffers are
bound on each draw call.
14 years ago
Vladimír Vondruš
0ac52b1c8b
Doc++
...
Added some TODOs, hiding internal Mesh implementation from the
documentation.
14 years ago
Vladimír Vondruš
e527cfb226
Using enum instead of bool parameter antipattern.
14 years ago
Vladimír Vondruš
64665872cc
Use CORRADE_ASSERT() instead of cassert and direct error output.
...
Unlike previous solution this can be compiled without any impact on
performance at all.
14 years ago
Vladimír Vondruš
37eff1149b
Using Vertex Array Objects for mesh drawing.
...
* All attribute pointers and buffer binding is now stored in each
mesh own vertex array object, thus each mesh drawing now needs
only three OpenGL calls.
* Removed default VAO from Scene, which fixes unit test crashes.
14 years ago
Vladimír Vondruš
5d3f54edb2
Warn and assertion fail when mesh has no vertices/indexes before drawing.
14 years ago
Vladimír Vondruš
e43c1fae33
Strongly-typed Primitive enum in Mesh.
...
Also updated "default" constructor to include primitive type, as in many
cases only the primitive is specified and not the counts and types of
data.
14 years ago
Vladimír Vondruš
fb9b003e24
Buffer rework.
...
* Renamed Type enum to Target to be consistent with OpenGL naming
* Strongly typed enums
* Ability to specify different type when binding/setting data
* Added missing buffer targets
14 years ago
Vladimír Vondruš
e77b38d20b
Reworked Mesh / IndexedMesh to use new type traits and Type enum.
14 years ago
Vladimír Vondruš
70fa53b949
Removed unbind() from buffers and textures.
...
It doesn't help with any safety, but just complicates everything and
makes unnecessary GL calls.
14 years ago
Vladimír Vondruš
d8943b898c
Use nullptr instead of 0 for pointers.
14 years ago
Vladimír Vondruš
b945f5f68b
Happy New Year.
15 years ago
Vladimír Vondruš
c7b331d100
(Ahem...) Happy New Year!
15 years ago
Vladimír Vondruš
2e14f57560
Minor refactoring, documentation.
16 years ago
Vladimír Vondruš
197288e82a
Getter for vertex count in Mesh.
16 years ago
Vladimír Vondruš
8bc5fa67da
Make Mesh usable for subclassing, also document it a bit more.
16 years ago
Vladimír Vondruš
9317d089e9
Class for managing non-indexed meshes.
16 years ago