Vladimír Vondruš
b3544a0404
imageconverter: make it possible to save raw imported data.
7 years ago
Vladimír Vondruš
d08e5c1638
imageconverter: print available plugins on importer/converter load error.
...
At first I wanted to add --importers / --converters options, but that
didn't really work because the argument parser complained that
input/output is not set.
7 years ago
Vladimír Vondruš
4671128cd4
doc: mention how to supply Windows manifests without CMake.
7 years ago
Vladimír Vondruš
a85d24ad17
Audio, GL: (attempt to) fix MinGW GCC warnings on static Windows builds.
...
The CI doesn't have this configuration in the build matrix, so hoping
it's doing what it's supposed to.
7 years ago
Vladimír Vondruš
aa722cd5bd
Platform: Xlib.h is a bad, bad thing.
7 years ago
Vladimír Vondruš
90007a6cb7
modules: clean up pthread linking in FindSDL2.cmake.
...
Should not have any functional change, however we can now use the
imported target (instead of a variable that can be empty if threads
are not found), using REQUIRED because otherwise it makes no sense, and
checking explicitly for both libraries instead of the merged variable
(because there it's only an accident it actually works).
7 years ago
Vladimír Vondruš
4a06b913a8
Doc++
7 years ago
Vladimír Vondruš
b850744ce5
package/homebrew: update for 2019.10.
7 years ago
Vladimír Vondruš
8070f81416
package/msys: update for 2019.10.
7 years ago
Vladimír Vondruš
a77e91527e
package/archlinux: update version numbers for 2019.10.
...
And sync the stable package with upstream changes.
7 years ago
Vladimír Vondruš
deb25cd28f
singles: update for 2019.10.
7 years ago
Vladimír Vondruš
8412e8f99c
package/debian: update changelog for 2019.10.
7 years ago
Vladimír Vondruš
ac71d99f57
Bumped soversion for 2019.10.
7 years ago
Vladimír Vondruš
8d8bab7830
doc: updated changelog for the 2019.10 release.
7 years ago
Vladimír Vondruš
cdd0147edb
Disable automatic resource initializers when building static.
...
That's done manually, and when such a static lib is linked to a DLL, the
suddenly appearing global constructors are unexpected.
7 years ago
Vladimír Vondruš
909887ad7c
A sad workaround for a sad misery with Python bindings on Windows.
7 years ago
Vladimír Vondruš
de95eddb3f
Use the new Matrix4::normalMatrix() everywhere.
7 years ago
Vladimír Vondruš
de3f8858f0
Math: now that we have a standalone cofactor(), inline its internals.
...
Apparently this gives a nearly three-times speed up compared to before.
Didn't expect that.
Starting Magnum::Math::Test::MatrixBenchmark with 16 test cases...
INFO Benchmarking a debug build.
BENCH [01] 95.33 ± 4.52 ns multiply3()@499x10000 (wall time)
BENCH [02] 183.99 ± 9.29 ns multiply4()@499x10000 (wall time)
BENCH [03] 110.17 ± 8.50 ns comatrix3()@49x10000 (wall time)
BENCH [04] 161.54 ± 10.13 ns invert3()@49x10000 (wall time)
BENCH [05] 471.44 ± 19.40 ns invert3GaussJordan()@49x10000 (wall time)
BENCH [06] 320.65 ± 13.23 ns invert3Rigid()@49x10000 (wall time)
BENCH [07] 206.27 ± 9.80 ns invert3Orthogonal()@49x10000 (wall time)
BENCH [08] 321.25 ± 18.82 ns comatrix4()@49x10000 (wall time)
BENCH [09] 445.50 ± 15.18 ns invert4()@49x10000 (wall time)
BENCH [10] 828.55 ± 16.96 ns invert4GaussJordan()@49x10000 (wall time)
BENCH [11] 533.23 ± 21.75 ns invert4Rigid()@49x10000 (wall time)
BENCH [12] 345.56 ± 10.16 ns invert4Orthogonal()@49x10000 (wall time)
BENCH [13] 63.72 ± 6.85 ns transformVector3()@999x10000 (wall time)
BENCH [14] 62.28 ± 4.43 ns transformPoint3()@999x10000 (wall time)
BENCH [15] 82.05 ± 7.96 ns transformVector4()@999x10000 (wall time)
BENCH [16] 79.32 ± 2.41 ns transformPoint4()@999x10000 (wall time)
Finished Magnum::Math::Test::MatrixBenchmark with 0 errors out of 5500 checks.
7 years ago
Vladimír Vondruš
515637c76a
Math: implement a robust and faster Matrix4::normalMatrix().
...
This change makes the operations split into a bunch of separate
functions, making the parts easier to document, however with a slight
negative effect on debug performance:
Starting Magnum::Math::Test::MatrixBenchmark with 16 test cases...
INFO Benchmarking a debug build.
BENCH [01] 94.54 ± 3.62 ns multiply3()@499x10000 (wall time)
BENCH [02] 183.47 ± 7.50 ns multiply4()@499x10000 (wall time)
BENCH [03] 318.11 ± 11.59 ns comatrix3()@49x10000 (wall time)
BENCH [04] 379.51 ± 12.17 ns invert3()@49x10000 (wall time)
BENCH [05] 448.23 ± 17.61 ns invert3GaussJordan()@49x10000 (wall time)
BENCH [06] 338.96 ± 11.61 ns invert3Rigid()@49x10000 (wall time)
BENCH [07] 206.37 ± 10.59 ns invert3Orthogonal()@49x10000 (wall time)
BENCH [08] 879.40 ± 20.03 ns comatrix4()@49x10000 (wall time)
BENCH [09] 1.16 ± 0.03 µs invert4()@49x10000 (wall time)
BENCH [10] 825.40 ± 17.34 ns invert4GaussJordan()@49x10000 (wall time)
BENCH [11] 534.86 ± 15.73 ns invert4Rigid()@49x10000 (wall time)
BENCH [12] 347.36 ± 11.62 ns invert4Orthogonal()@49x10000 (wall time)
BENCH [13] 65.70 ± 6.73 ns transformVector3()@999x10000 (wall time)
BENCH [14] 62.56 ± 3.09 ns transformPoint3()@999x10000 (wall time)
BENCH [15] 81.25 ± 2.78 ns transformVector4()@999x10000 (wall time)
BENCH [16] 82.14 ± 4.26 ns transformPoint4()@999x10000 (wall time)
Finished Magnum::Math::Test::MatrixBenchmark with 0 errors out of 5500 checks.
7 years ago
Vladimír Vondruš
e3a820f468
Math: benchmark basic Matrix operations.
...
So I'm sure the next additions don't make things worse -- in the debug
build, in particular. Current state:
Starting Magnum::Math::Test::MatrixBenchmark with 14 test cases...
INFO Benchmarking a debug build.
BENCH [01] 102.25 ± 4.58 ns multiply3()@499x10000 (wall time)
BENCH [02] 183.84 ± 7.75 ns multiply4()@499x10000 (wall time)
BENCH [03] 329.84 ± 20.50 ns invert3()@49x10000 (wall time)
BENCH [04] 442.08 ± 13.47 ns invert3GaussJordan()@49x10000 (wall time)
BENCH [05] 331.23 ± 13.85 ns invert3Rigid()@49x10000 (wall time)
BENCH [06] 206.01 ± 11.13 ns invert3Orthogonal()@49x10000 (wall time)
BENCH [07] 1.01 ± 0.03 µs invert4()@49x10000 (wall time)
BENCH [08] 826.77 ± 19.33 ns invert4GaussJordan()@49x10000 (wall time)
BENCH [09] 520.12 ± 21.97 ns invert4Rigid()@49x10000 (wall time)
BENCH [10] 344.20 ± 13.32 ns invert4Orthogonal()@49x10000 (wall time)
BENCH [11] 61.00 ± 2.89 ns transformVector3()@999x10000 (wall time)
BENCH [12] 61.55 ± 3.35 ns transformPoint3()@999x10000 (wall time)
BENCH [13] 80.65 ± 2.99 ns transformVector4()@999x10000 (wall time)
BENCH [14] 80.86 ± 3.32 ns transformPoint4()@999x10000 (wall time)
Finished Magnum::Math::Test::MatrixBenchmark with 0 errors out of 5400 checks.
7 years ago
Vladimír Vondruš
ccf8b665b4
package/archlinux: updated gitignore.
7 years ago
Vladimír Vondruš
303468f299
Doc++
7 years ago
Vladimír Vondruš
abf9d9aa50
plugins: modify binary output location only if all variables are set.
...
Otherwise it tries to create /magnum and such and fails.
7 years ago
Vladimír Vondruš
d3cd7f514f
CMake: don't override output location if any of these is set.
...
Otherwise it breaks projects that set only one.
7 years ago
Vladimír Vondruš
5f4e76e646
DebugTools: fix a linker error on Clang.
...
Not sure why it started happening only after I added a deprecated
constructor. Making it the same as is done for Image classes.
7 years ago
Vladimír Vondruš
507c5bf739
GL: remove the nv-egl-forward-compatible-context-unhappy workaround.
...
This was my bug, as requesting a forward-compatible context without
saying *what* version it should be forward compatible to makes no sense.
A followup to 73baab69ce .
7 years ago
Vladimír Vondruš
607b3a15fa
DebugTools: finish ResourceManager singleton deprecation.
7 years ago
Vladimír Vondruš
8c7c2c5745
SceneGraph: clarify transformation calculation.
7 years ago
Vladimír Vondruš
c1800d9778
doc: some more Gradle troubleshooting.
...
This fucking dumpster fire explodes every time I need to quickly test
something. Today I didn't manage to get it working at all, so switched
all my stuff to Gradle-less builds. Ugh.
7 years ago
Vladimír Vondruš
9fad16182e
Platform: implement AndroidApplication::MouseMoveEvent::relativePosition().
7 years ago
Vladimír Vondruš
35bf229ed5
Platform: add Sdl2Application::Configuration::WindowFlag::{OpenGL,Vulkan}.
7 years ago
Vladimír Vondruš
b3759b6a98
GL: ensure gl_PointCoord works correctly also on compatibility profile.
7 years ago
Vladimír Vondruš
8d2d848fe9
Doc++
7 years ago
Vladimír Vondruš
b64bb14412
Don't use angle brackets for local includes.
7 years ago
Vladimír Vondruš
108c75efcf
Fix non-deprecated static Windows build.
7 years ago
Vladimír Vondruš
023c3811c8
Primitives: doc++
7 years ago
Vladimír Vondruš
52ff540407
Primitives: fix and make gradient function params consistent.
7 years ago
Vladimír Vondruš
26accc7ec1
GL: AMD on Windows is also useless for framebufer format queries :/
7 years ago
Vladimír Vondruš
3629af231b
GL: new amd-windows-broken-dsa-cubemap-copy workaround.
7 years ago
Vladimír Vondruš
9fa87652e6
GL: new amd-windows-dsa-createquery-except-xfb-overflow workaround.
7 years ago
Vladimír Vondruš
d06914a1bd
doc: hint that Optional is a safer NoCreate.
7 years ago
Vladimír Vondruš
82f53862e1
Platform: Sdl2Application::mainLoopIteration() now returns a bool.
...
To indicate when the app desires to exit.
7 years ago
Vladimír Vondruš
24f7d45364
Implement globals shared across DLLs on Windows.
7 years ago
Vladimír Vondruš
ca326fdb18
GL: pile on more workarounds for CubeMapTexture DSA code paths.
...
Ugh why this has to be SO TERRIBLE. I'm starting to have extremely low
expectations for similar parts of Vulkan drivers by the same vendors.
7 years ago
Vladimír Vondruš
f2ba5602a4
GL: Intel Windows drivers 26 are less shitty w/ double attributes.
7 years ago
Vladimír Vondruš
f2252cfa3a
Updated toolchains submodule.
7 years ago
Vladimír Vondruš
5c042f62d0
GL: if timer queries are not available, SKIP the benchmarks.
...
Requiring each benchmark to handle this on its own would be silly.
7 years ago
Vladimír Vondruš
60c18f93a1
GL: implement time queries for WebGL 2, and workarounds, and ...
...
There's a new firefox-fake-disjoint-timer-query-webgl2 workaround and a
half-page of text listing various caveats and issues you might run into.
Also exposing them in the OpenGLTester (although quite shitty at this
point).
7 years ago
Vladimír Vondruš
cb5fe2dd49
GL: don't forward-declare what doesn't exist.
7 years ago
Vladimír Vondruš
05b9509dba
Expose UnsignedLong and Long on Emscripten.
...
The "64-bit integers have to be emulated and it's slow" problem doesn't
apply for WebAssembly anymore.
7 years ago