Marco Melorio
40bfa7ae91
Plaftorm: Add cursor management support
7 years ago
Vladimír Vondruš
5dc791a75c
Be nice and provide a clear assert in meshIndexTypeSize().
7 years ago
Vladimír Vondruš
96ea050a74
Primitives: fix a missing face in cylinder and cone primitives.
7 years ago
Vladimír Vondruš
8c902bec4d
Primitives: make Cone and Cylinder tests more maintainable.
...
I got some bugs there, need to fix them.
7 years ago
Vladimír Vondruš
e496b991b5
GL: properly prefix an error message.
7 years ago
Vladimír Vondruš
86ced6e72a
doc: doxygen you're stupid, thank you.
7 years ago
Vladimír Vondruš
70277f4b04
doc: mention GLSL BOM issues in Windows troubleshooting guide.
...
Even though any editor on any platform can add BOM, no serious ones do
that by default. Thus this is pretty localized to Windows where Notepad
adds BOM implicitly.
7 years ago
Vladimír Vondruš
c5872f2ddf
imagecoverter: implement raw pixel import as well.
...
Just tightly packed squares for now.
7 years ago
Vladimír Vondruš
2de43c4fc1
Make (Compressed)PixelFormat work with Configuration.
...
And thus also Arguments.
7 years ago
Vladimír Vondruš
c763c782b8
Forward-declare std::string.
...
Because we can.
7 years ago
Vladimír Vondruš
f2b33fa1ef
Why is this here.
7 years ago
Vladimír Vondruš
9f8f9b4164
Optimize {Compressed,}PixelFormat debug output.
...
Instead of prefixing every value with (Compressed)PixelFormat::,
printing that just once. Also moved the name table to an external header
so it can be used later for configuration value parsing. Compared to
the previous commit, Bloaty reports a save, meaning these two commits in
total save about 4 kB:
VM SIZE FILE SIZE
-------------- --------------
+687% +3.70Ki .rela.dyn +3.70Ki +687%
+15e2% +1.26Ki .data.rel.ro +1.26Ki +15e2%
[ = ] 0 .strtab +100 +0.1%
[ = ] 0 .symtab +48 +0.2%
-50.0% -8 [LOAD [RW]] -8 -50.0%
-3.1% -888 .eh_frame -888 -3.1%
-1.5% -1.92Ki .text -1.92Ki -1.5%
[ = ] 0 [Unmapped] -1.97Ki -32.2%
-38.5% -4.19Ki .rodata -4.19Ki -38.5%
-0.7% -2.02Ki TOTAL -3.85Ki -1.0%
7 years ago
Vladimír Vondruš
1ab963ea93
Consolidate stringified enums in mesh Debug and configuration parsers.
...
Well. Bloaty reports a 0.3% increase in Debug and 0.1% in Release, but I
guess if the enums would be larger, the savings would be actually
significant.
7 years ago
Vladimír Vondruš
dcda629428
package/archlinux: whoopsie, this wasn't updated in CENTURIES.
7 years ago
Vladimír Vondruš
e8280abfac
Doc++
7 years ago
Vladimír Vondruš
0aec0db323
imageconverter: clarify message, don't die on compressed images.
7 years ago
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