Vladimír Vondruš
eaa486a6e9
Added KHR_debug to ES2 extension list.
13 years ago
Vladimír Vondruš
153e5c784a
Sanity check for OpenGL version in Context.
...
I though this check was present since forever, but isn't. Maybe it's
hidden somewhere else.
13 years ago
Vladimír Vondruš
7b0f762683
Added and fully implemented OES_standard_derivatives extension.
13 years ago
Vladimír Vondruš
db71a23e3c
Bring whole Corrade namespace into Magnum namespace.
...
These projects are tightly interconnected anyway, this means a lot less
typing (yay!).
13 years ago
Vladimír Vondruš
3ada0d8d1d
Added Renderbuffer::setStorageMultisample().
13 years ago
Vladimír Vondruš
ab5b6fcbb3
Added Context::shadingLanguageVersionStrings(), better extension query.
...
Not relying on GL version when asking for extensions, i.e. Mesa might
know glGetStringi() even if it reports OpenGL 2.1 only. Similarly in
shadingLanguageVersionStrings(), not all HW is capable of 4.3, but
GL_NUM_SHADING_LANGUAGE_VERSIONS might be supported on GL3 HW too (not
my case, though).
13 years ago
Vladimír Vondruš
06a8341e9b
Support for EXT_disjoint_timer_query ES2 extension.
13 years ago
Vladimír Vondruš
47e9e4b47a
Mark ARB_robustness as done.
13 years ago
Vladimír Vondruš
11b3150a31
Support for ARB_robustness.
...
Robust *Framebuffer::read() access, ability to query robust buffer
access behavior in Context::flags(), ability to check graphics reset
status and reset notification policy in Renderer.
13 years ago
Vladimír Vondruš
c4aa95a595
Initial support for context flags.
13 years ago
Vladimír Vondruš
c9cb20d849
Call glClearDepth() if glClearDepthf() is not available.
13 years ago
Vladimír Vondruš
b9cee8e014
Support for ES2 extension NV_texture_border_clamp.
13 years ago
Vladimír Vondruš
549b1466fc
Support for ES2 extension ANGLE_depth_texture.
13 years ago
Vladimír Vondruš
91531d5f53
Support for ES2 extension NV_framebuffer_blit.
13 years ago
Vladimír Vondruš
c5ab86794b
Relicensing to MIT/Expat license, part 3: source files.
...
Added license header also to shader sources. Hopefully it won't harm
compilation times too much.
13 years ago
Vladimír Vondruš
a8abbdb7d3
Removing IndexedMesh, part 4: merged draw algorithm.
...
Still source-compatible, next step is to merge the documentation and
remove IndexedMesh stub altogether.
13 years ago
Vladimír Vondruš
9a571abb37
Added OES_element_index_uint ES2 extension to the list.
14 years ago
Vladimír Vondruš
c8444bdbbe
Added EXT_texture_storage ES2 extension to the list.
14 years ago
Vladimír Vondruš
9ad15b12fb
Mark ARB_invalidate_subdata as done.
14 years ago
Vladimír Vondruš
5b9b2dedef
Added EXT_discard_framebuffer ES2 extension to the list.
14 years ago
Vladimír Vondruš
cdb8893e7b
Added all currently supported OpenGL ES extensions to the list.
14 years ago
Vladimír Vondruš
b400fb7766
ES 2.0 extension list is equivalent to GL 2.1 extension list -- empty.
...
We assert that minimal OpenGL version is GL 2.1 / ES 2.0, thus
there is no need for list of extensions implemented in these versions.
14 years ago
Vladimír Vondruš
c6c659431b
Marked implemented extensions as such.
...
Extension list is now something like internal TODO list.
14 years ago
Vladimír Vondruš
3e32d5ece7
Added ARB_map_buffer_range extension to the list.
...
OpenGL 3.0 specification is awesomely confused with extensions. The ones
listed in specs don't have the complete functionality and references
to related ARB extensions are nowhere to be found.
14 years ago
Vladimír Vondruš
7183110eee
Doc++, @todo++
14 years ago
Vladimír Vondruš
7d6b7a4b6b
Using EXT_direct_state_access in framebuffers.
...
Framebuffer::attach*() doesn't need the target at all (meaning the
attachment will be used for both reading and drawing), another
misunderstanding on my side.
Now the extension is used on all places where it can be used (except for
unimplemented features).
14 years ago
Vladimír Vondruš
19029d97c6
Tracking viewport state in Framebuffer.
...
Viewport position and size is managed separately for each framebuffer
and glViewport() is called in bind() (and also from setViewport(), if
the framebuffer is currently bound) if the viewport differs from
current state. If used only one framebuffer size through whole
application lifetime, glViewport() doesn't need to be called at all.
14 years ago
Vladimír Vondruš
6ffa8eac51
Using old framebuffer binding internally if new is not supported.
14 years ago
Vladimír Vondruš
2acbd49e9c
Renamed Buffered{Image,Texture} to Buffer{Image,Texture}.
...
Buffered* hinted that it has something to do with caching, streaming or
whatever. "Buffer texture" is now also consistent with naming in
specification.
14 years ago
Vladimír Vondruš
91a2798603
Context initialization was not skipping surely supported extensions.
...
On OpenGL 3.3 context it was checking for support of all 3.0, 3.1 and
3.2 extensions even if isExtensionSupported() didn't use that
information at all.
14 years ago
Vladimír Vondruš
9138f1bcc9
Added OpenGL 4.3 extensions to the list.
14 years ago
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