Vladimír Vondruš
0f889369f4
No `using namespace std` anywhere.
...
Also added missing std:: prefix to remaining cases of std::size_t,
std::[u]int[0-9]+_t, std::sin() etc., std::exit().
14 years ago
Vladimír Vondruš
6c5d96d645
Adapted to Corrade changes.
14 years ago
Vladimír Vondruš
891cc6606e
Adapted to Corrade changes.
14 years ago
Vladimír Vondruš
8a3d2c12c6
Doc++
...
Crosslinked types from Math namespace with typedefs in Magnum namespace.
14 years ago
Vladimír Vondruš
ef1642aea1
Added MAGNUM_ASSERT_{VERSION,EXTENSION}_SUPPORTED() macros.
14 years ago
Vladimír Vondruš
a5e8d4535c
Debug output operator for Version enum.
14 years ago
Vladimír Vondruš
def1d7b3c6
Class for putting marks into OpenGL command stream for use in debuggers.
14 years ago
Vladimír Vondruš
99ac6ff812
Added missing extensions into Context.cpp.
14 years ago
Vladimír Vondruš
9701c8dacb
If targetting exactly ES 2.0, hide everything not available there.
...
Some target platforms supply their own OpenGL headers, thus we cannot
use our own from ES 3.0 and compilation fails.
On the other hand, this will be better for users as usage of unsupported
features will be catched right during compilation and not at runtime.
14 years ago
Vladimír Vondruš
9459d4c6a1
Using isVersionSupported() instead of plain comparison.
...
It is more descriptive and easier to fix/modify when it is in one place.
14 years ago
Vladimír Vondruš
ba86c3d2f8
Avoid crash when glGetString(GL_EXTENSIONS) returns nullptr.
14 years ago
Vladimír Vondruš
818fdefbd6
Added convenience function Context::supportedVersion().
14 years ago
Vladimír Vondruš
e2023ab278
Updated OpenGL ES support in Context and related files.
14 years ago
Vladimír Vondruš
a755a0a8aa
Doc++
...
I had no idea what that code was doing. Better to be documented.
14 years ago
Vladimír Vondruš
930c9f2a5d
Don't have `default:` in switches where all cases need to be handled.
...
Also added assert for cases which shouldn't be reached.
14 years ago
Vladimír Vondruš
4aa01e073e
Code cleanup, doc++
14 years ago
Vladimír Vondruš
10e64d2d27
Mesh rework, part 2: reworked internals.
...
* VAOs are used only if the extension is supported.
* Removed finalize() and other already useless stuff.
* Preparation for DSA and state tracking.
14 years ago
Vladimír Vondruš
1f43839e04
Using EXT_direct_state_access in textures.
...
Saves unnecessary calls to glActiveTexture() and glBindTexture().
14 years ago
Vladimír Vondruš
f9099a86bf
Tracking texture state - bindings and limits.
14 years ago
Vladimír Vondruš
beea8235b1
Using EXT_direct_state_access/ARB_separate_shader_objects for uniforms.
...
Also explicitly calling use() on default (non-DSA) setUniform()
implementation. Because of that, it is now possible to conveniently call
use() at the end, instead of at the beginning of uniform setting chain,
for example:
// before
shader->use();
shader->setTransformation(transformation)
->setProjection(projection)
->setColor(color);
// now
shader->setTransformation(transformation)
->setProjection(projection)
->setColor(color)
->use();
Note that you still have to explicitly call use(), because if DSA is
available, no use() is called explicitly on any setUniform(). If DSA is
not available, use() is called on first setUniform() and subsequent
calls have no negative performance impacts.
14 years ago
Vladimír Vondruš
193246e533
Private (implementation-only) OpenGL state tracker.
14 years ago
Vladimír Vondruš
806828f173
First extension-aware functionality - Buffer::copy().
...
If EXT_direct_state_access is supported, it uses faster alternative to
explicit binding.
14 years ago
Vladimír Vondruš
ce2ac51d08
Extension lists can be const as well.
14 years ago
Vladimír Vondruš
11823f6600
Context: use glGetString(GL_EXTENSIONS) on GL 2.1.
...
glGetStringi() is since GL 3.0.
14 years ago
Vladimír Vondruš
ae28de197b
Classes for handling version and extension information.
14 years ago