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
Vladimír Vondruš
ec20dea1e2
Platform: un-deprecate creation of Platform::Context without passing args.
...
I deprecated that because I wanted to be sure that I properly update all
my code to actually propagate the options. But now I see that this is
actually a valid case -- the engine being in a thread or in some other
way hidden from the outside *shouldn't* need access to argc/argv.
Also updated the docs to say it's completely harmless to propagate the
args.
8 years ago
Vladimír Vondruš
a97384839b
Use privately Corrade Optional instead of the problematic std::optional.
...
Not in the public APIs yet (Trade etc.), as I need to solve backwards
compatibility first.
8 years ago
Vladimír Vondruš
623fa97970
Updated copyright year.
8 years ago
Vladimír Vondruš
a4d32e650a
Move friend declarations into private class sections.
...
And hide them from Doxygen so it's not complaining. Related bug:
https://bugzilla.gnome.org/show_bug.cgi?id=776986
8 years ago
Vladimír Vondruš
2145ae9b96
Dropped NaCl support.
9 years ago
Vladimír Vondruš
0455800111
Detecting VMware SVGA3D driver.
...
The SVGA3D driver is used on Windows as well, which means Mesa is now
detected on Windows too.
9 years ago
Vladimír Vondruš
4b589e10ac
More consistent naming in Context::DetectedDriver.
...
DetectedDriver::AMD is now DetectedDriver::Amd,
DetectedDriver::ProbablyAngle is now just DetectedDriver::Angle. The old
names are still present, but deprecated and will be removed in the
future.
9 years ago
Vladimír Vondruš
d101ced2b4
Debug output for Context::DetectedDriver[s].
9 years ago
Vladimír Vondruš
6faf6c009a
On the other hand, most driver detection makes no sense on WebGL.
9 years ago
Vladimír Vondruš
cb2d590a33
Properly detect AMD and Intel drivers on ES builds as well.
...
(Some) AMD and Intel cards / drivers support
WGL/GLX_create_context_es2_profile as well.
9 years ago
Vladimír Vondruš
b83b122005
Debug operator for Context::Flags.
9 years ago
Vladimír Vondruš
031da4f8a2
Bind some default VAO in case we are on core profile with ARB_VAO disabled.
...
Otherwise it's not possible to render anything. The original behavior
was accepted by NVidia, but it's not accepted by Mesa, e.g.
9 years ago
Vladimír Vondruš
fe1a5413c5
Added Context::isCoreProfile().
...
It's funny when implementing a new feature immediately involves doing a
NV-specific workaround. Sigh.
9 years ago
Vladimír Vondruš
c870a1a6e8
Ability to detect Mesa drivers.
9 years ago
Vladimír Vondruš
7a16273e5d
Updated copyright year.
9 years ago