Vladimír Vondruš
eb98f13b72
Primitives: use offset-only attribs for Line and Gradient.
...
One less allocation for each.
6 years ago
Vladimír Vondruš
0657d6073d
Primitives: MSVC 2015 is this what makes you throw up?
6 years ago
Vladimír Vondruš
b203924355
GCC 4.8, happy to see you're still around, causing problems.
6 years ago
Vladimír Vondruš
a68946df5b
Primitives: port tests and related tools away from MeshDataXD.
...
Improving the tests a bit for trivial primitives to ensure the attribute
layouts are correct, not just counts.
6 years ago
Vladimír Vondruš
c8de337c06
Primitives: port away from MeshDataXD.
...
The internals don't use any std::vector anymore, only the icosphere
needs an std::unordered_map to do duplicate removal. Additionally, the
most simple primitives are now simply views on constant data,
being completely zero-allocation.
On a Mac this resulted in the dylib going down from 1.5 MB to 418 kB in
Debug, and from 129 kB to 90 kB in Release. Quite nice.
The tests are not ported away from MeshDataXD yet as I want to ensure
the behavior is *exactly* as before.
6 years ago
Vladimír Vondruš
1c74a87f24
Primitives: use a more efficient duplicate removal approach in Icosphere.
...
It's still extremely bad, but at least something.
6 years ago
Vladimír Vondruš
bdd270368d
Primitives: make the Icosphere test less awful.
...
This also doubles down as a regression test for the subdivide() and
removeDuplicates() mesh tools.
6 years ago
Vladimír Vondruš
6b2f4711b4
Primitives: fix an assertion in uvSphereWireframe().
...
Everything I do these days is a potential breakign change.
7 years ago
Vladimír Vondruš
a920722839
doc: label deprecated APIs and stuff new since 2019.10 with version info.
...
Should make new things more discoverable, avoid confusion when a
documented API isn't there and reduce the need for maintaining multiple
separate versions of the docs.
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š
023c3811c8
Primitives: doc++
7 years ago
Vladimír Vondruš
52ff540407
Primitives: fix and make gradient function params consistent.
7 years ago
Vladimír Vondruš
8ef975616f
Primitives: textured circle primitive.
7 years ago
Vladimír Vondruš
8c439a2b66
Primitives: use container comparison for circle test.
...
For some reason this was the only primitive where it wasn't done yet.
7 years ago
Vladimír Vondruš
8f94a7717f
Primitives: constify.
7 years ago
Vladimír Vondruš
3967116dee
Primitives: use Math::sincos() where appropriate.
7 years ago
Vladimír Vondruš
6c434c7b21
Primitives: remove cruft deprecated in 2018.04.
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š
0793d31d2b
Primitives: new gradient primitive.
8 years ago
Vladimír Vondruš
e7d99a1190
doc: convert primitive renderings to proper sRGB and HiDPI.
...
Quick detour that took me quite an extreme amount of time to finish.
8 years ago
Vladimír Vondruš
4acfa8c197
Primitives: a better line primitive.
8 years ago
Vladimír Vondruš
2f1c1aaefd
Primitives: document how the grid is oriented.
8 years ago
Vladimír Vondruš
2a089f0e35
Primitives: these two were missing from 100% code coverage.
8 years ago
Vladimír Vondruš
994b9b22ba
CMake: properly specify IDE folders for everything.
8 years ago
Vladimír Vondruš
7cd44c1437
Primitives: exclude trivial deprecated APIs from code coverage.
...
Back at 100% coverage.
8 years ago
Vladimír Vondruš
920db7aa73
Split the Trade library out.
8 years ago
Vladimír Vondruš
8c74f4b2db
Primitives: added grid3DSolid() and grid3DWireframe().
8 years ago
Vladimír Vondruš
8662919a2b
Primitives: new solid and wireframe cone primitive.
8 years ago
Vladimír Vondruš
ab32742b55
Primitives: make it possible to have wireframe hemisphere with one ring.
...
Will be tested in the following commit.
8 years ago
Vladimír Vondruš
c33fd4d9c6
doc: show how each primitive looks.
8 years ago
Vladimír Vondruš
ae8db0471f
Primitives: 3D circle primitive.
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š
013f1273f9
Primitives: max out the code coverage.
8 years ago
Vladimír Vondruš
8f27da9dfd
Set library soversion to 1.0, version to 0.
8 years ago
Vladimír Vondruš
c804021013
Primitives: doc++
8 years ago
Vladimír Vondruš
341a70a7f4
Primitives: document how to scale capsule / cylinder to preserve normals.
8 years ago
Vladimír Vondruš
623fa97970
Updated copyright year.
8 years ago
Vladimír Vondruš
1ec14c678b
Local Doxygen ignores for symbol export macros.
...
It was impossible to put all macros including the ones from other
projects into the global Doxyfile. Much cleaner now <3
8 years ago
Vladimír Vondruš
017c0ad94f
Primitives: test for circle mesh primitive as well.
...
So I see what's looping and what not.
9 years ago
guillaume.giraud@gmail.com
059f1396b0
Primitives: adding one extra vertex in solid circle primitive.
9 years ago
Vladimír Vondruš
12fa6961c8
Use CMake folders also for OBJECT libraries, executables and tests.
9 years ago
Émile Grégoire
dae1e8e9cf
Started adding folders for Visual Studio.
...
See https://gitter.im/mosra/magnum/archives/2017/03/25
9 years ago
Alice Margatroid
58270fe9f0
push_back -> emplace_back
9 years ago
Vladimír Vondruš
30fa9645c1
Primitives: fix Cylinder test to follow the bugfix.
...
Also added a bunch of comments to prevent confusing myself again next
time and spaced the indices evenly to make them readable. All those
poorly done things contributed to the bug.
9 years ago
Émile Grégoire
ef771364fe
Fixed issue in Primitives::Cylinder::solid() where the last ring of faces wouldn't be created when using cap ends because of wrong offset.
9 years ago
Vladimír Vondruš
7a16273e5d
Updated copyright year.
9 years ago
Vladimír Vondruš
bac4d579c2
Primitives: new axis2D() and axis3D() primitive.
...
Color-coded XY and XYZ axes, cut out of DebugTools::ObjectRender into a
better reusable piece of code. Using the new vertex color functionality
of mesh data.
9 years ago
Vladimír Vondruš
76aab47291
Trade: support for vertex colors in MeshData.
...
In order to have a seamless transition for all the plugins and potential
user code the original constructor was marked as deprecated and there is
a new constructor taking also the colors.
9 years ago