Vladimír Vondruš
7b368dcdf4
GL: mention how to do --magnum-log quiet directly from C++.
7 years ago
Vladimír Vondruš
8e57060f39
Support for PVRTC compressed pixel format.
7 years ago
Vladimír Vondruš
df6582d948
Platform: ask for debug context if --magnum-gpu-validation is enabled.
...
Also mention the option more prominently in related docs.
7 years ago
Vladimír Vondruš
8af19f21f0
Audio: make it possible to disable OpenAL extensions as well.
...
Finally, a feature parity.
7 years ago
Vladimír Vondruš
a14be9b154
Adapt to (breaking) Corrade changes.
7 years ago
Vladimír Vondruš
bb921d0f86
GL: print a message about GPU validation in verbose log output.
7 years ago
Vladimír Vondruš
3508439445
GL: clarify Context::DetectedDriver value docs.
7 years ago
Vladimír Vondruš
11a94c16a3
GL: added Context::makeCurrent().
7 years ago
Vladimír Vondruš
a3c7968e64
Adapt to BUILD_MULTITHREADED being part of Corrade now.
...
If building with deprecated features enabled, the buildsystem checks if
the option is still set and is inconsistent with what Corrade reports
and reports a deprecation warning. For backwards compatibility the
MAGNUM_BUILD_MULTITHREADED CMake variable and preprocessor macro are
still provided as well.
7 years ago
Vladimír Vondruš
b05c887375
Audio, GL: make the extension lists constexpr.
...
The Audio::Extension::extensions() and GL::Extension::extensions()
functions now return an ArrayView instead of a reference to std::vector.
Having a function-local static std::vector is the worst thing ever. Ugh.
7 years ago
Vladimír Vondruš
3626562e1d
Adapted to Corrade changes.
...
Mostly missing includes now.
7 years ago
Vladimír Vondruš
0b43018f6c
GL: make Context constructors and internal methods protected.
...
But hidden from Doxygen. So these can be called from both
Platform::GLContext (without friending) and also tested.
7 years ago
Max Schwarz
c38319ef00
GL: Use Corrade::Containers::Pointer for Context _state
...
The old raw pointer could cause a segfault if the context is never
created, since the destructor unconditionally deleted _state.
7 years ago
Vladimír Vondruš
927b75efaf
GL: this internal API always takes a C string anyway.
7 years ago
Vladimír Vondruš
84d553cd28
GL: get rid of std::bitset and std::array in Context internals.
...
We have our own lighter versions.
7 years ago
Vladimír Vondruš
377719147c
Audio, GL: remove deprecated Context conversion to pointer.
...
Deprecated since 2017.
7 years ago
Vladimír Vondruš
dad4fc7396
GL: removed deprecated Context::DetectedDriver aliases.
...
Deprecated since 2017.
7 years ago
Vladimír Vondruš
6c5d037005
GL: detecting ARM Mali drivers on Android.
7 years ago
Vladimír Vondruš
930a323c05
GL: removed deprecated aliases to GL functionality in the root namespace.
...
Deprecated for 2018.04, it's been almost a year since. Whoever is using
Magnum regularly updated already, and who not can always upgrade
gradually (2018.02, 2018.04, 2018.10, 2019.01 etc.).
7 years ago
Vladimír Vondruš
796bdb6731
GL: new pseudo-extension MAGNUM_shader_vertex_id.
...
Will be used to distinguish if the driver supports gl_VertexID. This is
not the case on SwiftShader ES3 contexts (and could be elsewhere,
probably).
7 years ago
Vladimír Vondruš
74183eb8b9
GL: improve extension docs.
7 years ago
Vladimír Vondruš
44a77ed918
GL: fixed broken links to extensions.
...
These were originally working around some inconsistencies in the
upstream naming, but that's fixed since.
7 years ago
Vladimír Vondruš
b76d1226e0
GL: detect SwiftShader.
7 years ago
Vladimír Vondruš
4c8195ec9b
GL: new --magnum-gpu-validation command-line option.
...
Enables KHR_debug, if available. This should have been here since ages.
7 years ago
Vladimír Vondruš
4f2f29d1bb
GL: use EnumSet instead of bool for internal flags.
...
There will be more soon.
7 years ago
Vladimír Vondruš
5923efbdee
external: pass GL::Context to flextGLInit().
...
To make it possible to put driver-specific workaround there.
7 years ago
Vladimír Vondruš
e6b7aa12fa
Updated copyright year.
7 years ago
Vladimír Vondruš
dd343fe35b
GL: make it possible to bind a scratch VAO for external GL code.
...
Used in those sad and unfortunate cases where we need to call
shitty external GL code that's not VAO-aware.
8 years ago
Vladimír Vondruš
057854c5bd
GL: properly provide enum operators for Context::State.
8 years ago
Vladimír Vondruš
d628232e8c
GL: exposing GL::Context::Flag::ForwardCompatible.
8 years ago
Vladimír Vondruš
e795478353
Make all vars initialized in constructors rather than at some later point.
...
Reported by PVS-Studio, many thanks to @alexesDev for collecting the
report.
8 years ago
Vladimír Vondruš
c61b245a3c
GL: update the --magnum-log option to include "verbose".
8 years ago
Vladimír Vondruš
81aa98dbee
GL: make it possible to pass a pre-filled Utility::Arguments to Context.
...
For example to support additional app-specific configuration.
8 years ago
Vladimír Vondruš
8018b17bc7
Doxygen: renamed \extension[2] to \gl_extension[2].
...
So it's clear that this is not a Vulkan extension link.
8 years ago
Vladimír Vondruš
53e2043c6b
Split the OpenGL layer out, pt 14: Platform::{Context => GLContext}.
...
Compatibility header and alias in the next commit so Git is able to
recognize the file move.
8 years ago
Vladimír Vondruš
9e4ccf6a55
Split the OpenGL layer out, pt 13: renamed GL-related macros.
...
The MAGNUM_ASSERT_VERSION_SUPPORTED(),
MAGNUM_ASSERT_EXTENSION_SUPPORTED(), MAGNUM_VERIFY_NO_ERROR() macros are
now MAGNUM_ASSERT_GL_VERSION_SUPPORTED(),
MAGNUM_ASSERT_GL_EXTENSION_SUPPORTED() and MAGNUM_VERIFY_NO_GL_ERROR().
Backwards-compatible aliases are in the original headers, as usual.
8 years ago
Vladimír Vondruš
e5e231784a
Split the OpenGL layer out, pt 5: compatibility headers and aliases.
...
With this and buildsystem updates the rest of the library should compile
again.
8 years ago
Vladimír Vondruš
9dcaf23389
Split the OpenGL layer out, pt 4: new Magnum::GL namespace.
...
At the moment just the GL library itself w/o the tests, and without
backwards compatibility aliases. The following types were left in the
root namespace, despite being in the GL/ directory, as they will get
moved back soon:
* Image, CompressedImage and their dimensional typedefs
* ImageView, CompressedImageView and their dimensional typedefs
* PixelStorage
Not PixelFormat etc., that one will stay in the GL namespace and a
completely new PixelFormat enum will be provided in the root namespace.
8 years ago
Vladimír Vondruš
fc1b167bff
Split the OpenGL layer out, pt 1: moving files to a new location.
...
Minimal updates (just the include guards) so Git is hopefully able to
detect the rename and track the history properly.
Everything except Magnum::GL doesn't compile now.
8 years ago
Vladimír Vondruš
68dca658c5
doc: better documented GL driver workarounds and how to add them.
8 years ago
Vladimír Vondruš
2a3a907c15
GL: manual indices for extensions.
...
The `#line` statement was an ugly hack and it breaks code highlighting
in KDevelop (and I guess in many other Clang-based IDEs as well). This
however means adding new extensions is a bit more annoying, but
hopefully the newly added test should aid with that. Developers guide
contains more info.
8 years ago
Vladimír Vondruš
3d0ee00491
GL: use public API of the Extension class.
...
No need to friend and use underscored members.
8 years ago
Vladimír Vondruš
f3227ba2bf
Simplify flag combination.
...
I didn't know this was possible, heh.
8 years ago
Vladimír Vondruš
d16c3a2c04
doc: compiled code snippets for the root namespace.
...
Oh boy, so much was not compiling, outdated or just plain wrong.
8 years ago
Vladimír Vondruš
2f729f6965
external: updated OpenGL headers for 4.6, related modifications.
8 years ago
Vladimír Vondruš
974b0e70d7
Updates for debug output in ES 3.2.
8 years ago
Vladimír Vondruš
49fd379da5
Updates for robust buffer access in ES 3.2.
8 years ago
Vladimír Vondruš
14a213f6eb
Improve state tracker resetting functionality.
8 years ago
Vladimír Vondruš
8181158697
Documentation updates for the new theme in the root namespace.
...
Also adding search keywords for hopefully all OpenGL APIs.
8 years ago
Vladimír Vondruš
6d509b7a1b
Random updates for the new documentation theme in the root namespace.
8 years ago