Vladimír Vondruš
29806dd34e
[wip] this is probably all useless anyway
...
[ci skip]
7 years ago
Vladimír Vondruš
25aa1b8c22
Text: expect opened font in all AbstractFont accessors.
...
Consistency is a king. This might be a perf penalty, but it prevents
accidents (and the user code can always cache the value), so it's
warranted.
7 years ago
Vladimír Vondruš
db1d18729c
Text: test basic AbstractFont construction.
7 years ago
Vladimír Vondruš
7fefac955a
Text: debug output for AbstractFont::Feature[s].
7 years ago
Vladimír Vondruš
344e00ce11
Text: implement file callbacks for AbstractFont.
...
Basically mirroring the API of Trade::AbstractImporter, as that proved
to be useful. The old crazy openSingleData() and openData(horribleStuff)
are deprecated and will be removed in a future release.
No backwards compatibility is provided for font plugins, these need to
be adapted.
7 years ago
Vladimír Vondruš
88135b72bc
Text: doc++
7 years ago
Vladimír Vondruš
e198be76a1
Text: minor cleanup in the test.
7 years ago
Vladimír Vondruš
037206fd56
Trade: minor cleanup.
7 years ago
Vladimír Vondruš
e361f38cfb
Trade: fix annoying missing initializer warnings on GCC 4.8.
7 years ago
Vladimír Vondruš
589a912fa1
Trade: accept const references in AbstractImporter file callbacks.
7 years ago
Vladimír Vondruš
29d88c8a71
Trade: test also plain AbstractImporter::openData().
7 years ago
Vladimír Vondruš
11b4514372
Trade: doc++
7 years ago
Vladimír Vondruš
76c8603bc7
Trade: clean up unnecessary cruft in the AbstractImporter test.
7 years ago
Vladimír Vondruš
e3fc0d037c
Move Trade::ImporterFileCallbackPolicy to InputFileCallbackPolicy.
...
It'll get used outside of the root namespace and since the callbacks tend
to be quite complex, it would be silly to require users to implement one
callback for Trade, one for Text and one for Audio, for example.
7 years ago
Vladimír Vondruš
8357442ad7
DebugTools: don't try to use system plugin dirs in CompareImage test.
...
Due to that, all the tests got skipped on the CI and moreover when ABI
was broken, tests were failing hard due to ABI mismatches with system
installed plugins. No good.
Some variants still need to access the system plugin dir (such as checks
for compressed data), but those are minimal. Sanitized them nevertheless
so a broken system-installed plugin doesn't break the test.
7 years ago
Vladimír Vondruš
9005b3c9aa
Platform: expose also window events via Sdl2Application::anyEvent().
7 years ago
Guillaume Jacquemin
daf1deab3e
Sdl2Application: add glContext() accessor.
7 years ago
Vladimír Vondruš
875ad29dde
DebugTools: the visibility.h header is needed always.
7 years ago
Vladimír Vondruš
94ca8273e1
No need to leak GL headers everywhere.
7 years ago
Vladimír Vondruš
8e8010c40b
Document and print helpful error messages for GL-dependent features.
7 years ago
Vladimír Vondruš
053f406b7d
Platform: make SDL2 and GLFW apps buildable without TARGET_GL again.
...
I'm pretty sure this worked correctly in 2018.04.
7 years ago
Vladimír Vondruš
63e914909f
GL: fix unused variable warning in a test.
7 years ago
Vladimír Vondruš
cb22975d1b
Trade: minor cleanup.
...
These are linked transitively from the Magnum library.
7 years ago
Vladimír Vondruš
4b0692e7b9
MagnumFontConverter: ensure predictable output order.
7 years ago
Vladimír Vondruš
00350791a3
MagnumFontConverter: gracefully fail with glyph caches on OpenGL ES.
7 years ago
Vladimír Vondruš
8b748ace7d
Text: properly report failures from AbstractFontConverter.
7 years ago
Vladimír Vondruš
a5634f4bf4
Text: fix annoying warnings on GCC 4.8.
7 years ago
Vladimír Vondruš
834c5fe40d
Text: API-independent base for glyph caches.
...
Allows the Font and FontConverter plugins be built without TARGET_GL
enabled. That was the last piece missing for making the magnum-plugins
repo completely GL-free.
7 years ago
Vladimír Vondruš
215d50a087
Text: allow empty files in AbstractFont.
...
In particular, MagnumFont can be an empty.
7 years ago
Thibault Jochem
28e300da02
zero-initialize utf8 buffer.
7 years ago
Vladimír Vondruš
75cc1725ad
CMake: link both GlfwApplication and Sdl2Application to EGL, if needed.
...
This is already done in the FindMagnum module for both, but not in the
source tree -- for SDL2 it was done in the FindSDL2 module (seems a
strange place) and for GLFW nowhere. To make things consistent, I'm
doing that in the Platform CMakeLists now and removed it from FindSDL2.
Hopefully this doesn't break anyone's workflow (static builds of
SDL2/GLFW?). In that case we would need to re-add it to the Find
modules as well.
7 years ago
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š
5bf09f0cea
MeshTools: update fullScreenTriangle() docs.
7 years ago
Vladimír Vondruš
cf3ad5c700
MeshTools: test fullScreenTriangle().
...
Turns out the ES3 version doesn't work on SwiftShader due to broken
gl_VertexID.
7 years ago
Vladimír Vondruš
67cf914864
TextureTools: avoid the test looking for plugins we didn't supply.
7 years ago
Vladimír Vondruš
9e3690670a
TextureTools: explicitly force operation sequencing in the test.
...
On GCC 4.8 at least, release() gets called on the image before size(),
causing size() to be zero.
7 years ago
Vladimír Vondruš
4ff67d53b1
TextureTools: don't benchmark GPU if we don't have time queries.
...
Makes a loud BOOM 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š
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š
3d08c641d8
GL: yet another workaround for SwiftShader, now with XFB buffer bindings.
7 years ago
Vladimír Vondruš
579d7b489f
GL: use proper literals in a test.
7 years ago