Vladimír Vondruš
3d0e237dbf
DebugTools: texelFetch() doesn't work w/o min filter on SwiftShader.
...
WTF. I have no explanation for this.
7 years ago
Vladimír Vondruš
8ba2cac0ee
DebugTools, MeshTools, TextureTools: handle broken gl_VertexID.
...
DebugTools::textureSubImage(), MeshTools::fullScreenTriangle() and
TextureTools::distanceField() all plagued by this on SwiftShader.
7 years ago
Vladimír Vondruš
40e0150e09
DebugTools: add license header to shader sources.
7 years ago
Vladimír Vondruš
06d2f0b598
DebugTools: check for different error string based on impl color read fmt.
7 years ago
Vladimír Vondruš
bbf2e15287
DebugTools: give up and skip R8 screenshot() tests on ES2.
...
It's... not worth the pains.
7 years ago
Vladimír Vondruš
80fc86ccba
DebugTools: add some fuziness to ObjectRenderer test.
...
SwiftShader misplaces two pixels. No biggie.
7 years ago
Vladimír Vondruš
28d89611f3
DebugTools: fix textureSubImage() for float textures on ES3.
...
By accident the returned image had zero size.
7 years ago
Vladimír Vondruš
efcc4e0d1c
DebugTools: harden the test for screenshot().
7 years ago
Vladimír Vondruš
3f0b298d9b
DebugTools: disable bufferData() tests on drivers w/o map_buffer_range.
...
Was crashing, haha.
7 years ago
Vladimír Vondruš
211949d3ce
DebugTools: improve the reverse format mapping in screenshot().
...
Previously it was going through all following ifs even after it found
the matching value. Using a lambda to do early returns.
7 years ago
Vladimír Vondruš
b31f886fe2
DebugTools: deprecate ForceRendererOptions::scale() in favor of size().
...
Who named it like that?!
7 years ago
Vladimír Vondruš
304cd6f036
DebugTools: greatly simplified ForceRenderer and ObjectRenderer impls.
...
This code was neglected for a while. No need to have naked new or
explicit handling of vertex/index buffers anymore.
7 years ago
Vladimír Vondruš
5cf147ec21
DebugTools: fix an assertion in ForceRenderer.
7 years ago
Vladimír Vondruš
44997465a7
DebugTools: test ForceRenderer and ObjectRenderer.
...
I spent some time trying ForceRenderer3D to produce the same image as
ForceRenderer2D but it *does not want* to show the arrowhead to me, so I
gave up.
7 years ago
Vladimír Vondruš
537177ca26
DebugTools: added screenshot().
7 years ago
Vladimír Vondruš
d4b3e950d3
DebugTools: minor cleanup.
7 years ago
Vladimír Vondruš
db44b570f7
DebugTools: make CommpareImage usable with CORRADE_COMPARE_AS().
7 years ago
Vladimír Vondruš
a36d8eb033
Remove use of std::reference_wrapper where possible.
...
What's left is *a lot* of places taking monstrous
std::vector<std::reference_wrapper> and that can't be changed to
std::vector<Containers::Reference> in a source-compatible way. Even that
would be only a temporary change, since the goal is to fully avoid
dependency on STL in those cases.
The final version of these APIs should take
Containers::ArrayView<Containers::Reference> and be implicitly
convertible froom e.g. std::vector<Containers::Reference>. That's
definitely possible, but not in time for 2019.01, so instead of forcing
users to temporary pass a `{vec.begin(), vec.size()}` everywhere instead
of just `vec`, I'm rather keeping these APIs intact.
7 years ago
Vladimír Vondruš
f9f3df69de
Get rid of std::unique_ptr.
7 years ago
Vladimír Vondruš
24b8ff086c
Removed std::optional backwards compatibility.
...
This was a dirty mess. Good riddance. Also removing the include from the
header now, as it has a forward declaration and thus is not needed.
7 years ago
Vladimír Vondruš
81354d0608
DebugTools: compile forgotten snippets.
...
Also split the file to stuff that requires TARGET_GL and stuff which
doesn't.
7 years ago
Vladimír Vondruš
2149f7b869
Wrap all tests in unnamed namespaces.
...
This makes the compiler warn about test cases that aren't ever used,
which is a good thing.
7 years ago
Vladimír Vondruš
e6b7aa12fa
Updated copyright year.
7 years ago
Vladimír Vondruš
6bd44bffd6
DebugTools: fix a build system corner case.
7 years ago
Vladimír Vondruš
00b0a814e0
Dropped GCC 4.7 support.
...
Interesting that many of the annoyances still apply to 4.8.
8 years ago
Vladimír Vondruš
b08d81a9ee
Make it possible to compile GL tests on WebGL 2 as well.
...
Not sure why this didn't work already. WebGL 1 works.
8 years ago
Vladimír Vondruš
7ad64bda2a
DebugTools: add CompareImageFile, CompareImageToFile + CompareFileToImage.
...
These provide more convenience for the usual cases of comparing a
generated image to a file and vice versa.
8 years ago
Vladimír Vondruš
f8ad32f71c
DebugTools: exclude hard-to-test code from code coverage.
8 years ago
Vladimír Vondruš
5e9bce3823
DebugTools: doc++
8 years ago
Vladimír Vondruš
8efc6b39e9
Deprecate the Shapes library and everything that depends on it.
...
Scheduled for removal in ~6 months if all goes well.
8 years ago
Vladimír Vondruš
e0c0baacd2
DebugTools: Primitives are needed also for ObjectRenderer.
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š
22d1f3bb9f
DebugTools: minor cleanup.
8 years ago
Vladimír Vondruš
453fc0b3e7
Shaders: more convenient VertexColor::Color[34] attribute specifiers.
...
Much easier to write (and explain!) than Shaders::VertexColor2D::Color{
Shaders::VertexColor2D::Color::Components::Three}. Ugh. Why again it
took me *years* to realize?
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š
4d565a8f73
DebugTools: CompareImage now supports only generic pixel formats.
8 years ago
Vladimír Vondruš
4a88b4633d
DebugTools: support generic pixel formats in textureSubImage().
8 years ago
Vladimír Vondruš
4e757a3f64
Split the OpenGL layer out, pt 26: remove dependencies on the GL lib.
...
Primitives, MeshTools, Trade and TextureTools are not depending on the
GL library anymore.
8 years ago
Vladimír Vondruš
7785698d35
Split the OpenGL layer out, pt 21: adapted DebugTools.
8 years ago
Vladimír Vondruš
7b5ef21bd9
Don't return redundant info from Image*::dataProperties().
...
It was returning either pixel size or compressed block size, which is
now available directly via other means.
This is a breaking change, but I don't expect these functions to be
used widely beyond Magnum internals.
8 years ago
Vladimír Vondruš
b1de952c13
Split the OpenGL layer out, pt 6: adapted buildsystem of dependent libs.
...
Now the rest should build with a lot of deprecation warnings.
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š
14c235f8ee
Deprecated {Compressed,}Image::setData() functions.
...
They just mirror what the constructor already does. The classes are
also movable, so why not just move a new instance over.
8 years ago
Vladimír Vondruš
01e2727326
Removed PixelStorage::setSwapBytes().
...
Too much burden to implement. Nope. Sorry. All APIs were just asserting
that it's not enabled at the moment, so I may as well just remove it
completely.
8 years ago
Vladimír Vondruš
cb2a20aced
Test: make the GL tests compile on WebGL 1.
...
Not WebGL 2 yet, though.
8 years ago
Vladimír Vondruš
60ddfa888e
DebugTools: fix Clang warning complaint.
...
The types are already instantiated above.
8 years ago
Vladimír Vondruš
c139e0384d
Primitives: get rid of useless classes.
...
All functionality is now available through free functions. The classes
are now just deprecated wrappers and/or typedefs and will be removed in
some future release.
8 years ago
Vladimír Vondruš
8f27da9dfd
Set library soversion to 1.0, version to 0.
8 years ago
Vladimír Vondruš
055858d357
DebugTools: documentation updates for the new theme.
8 years ago
Vladimír Vondruš
623fa97970
Updated copyright year.
8 years ago