Vladimír Vondruš
c83c1fcc4f
CMake: make it possible to use <PackageName>_ROOT to locate dependencies.
3 years ago
Vladimír Vondruš
c0b155763e
doc: bad copypaste, bad.
3 years ago
Vladimír Vondruš
e59f8445f8
doc: updated changelog.
3 years ago
Vladimír Vondruš
89fa0d3f93
python: data access in trade.SceneData.
...
Just regular boring code, all the cool stuff was invented for MeshData
already.
3 years ago
Vladimír Vondruš
d62b44e3cd
python: support also normalized VertexFormat values.
...
They're unpacked to full floats on element access and packed back from
full floats on mutable access, which makes this all very nice and
transparent. Yay Python!
That's it for now, I'll postpone half-float and matrix types for later
when these are actually needed, as it needs extra testing for the
aligned variants too.
3 years ago
Vladimír Vondruš
c07952fc18
python: have a common header with Python format string definitions.
...
To not have to duplicate these for each and every case, enlarging the
surface for potential bugs. Also changing the signatures to number +
identifier, instead of identifier repeated number of times. Means the
compiler won't be able to deduplicate / overlap the literals in the
binary, but is much more maintainable.
For Numpy this causes the slices to be reported as actual typed Numpy
arrays instead of typeless tuples, which is good I guess? Not sure why
that wasn't the case before, or what is the difference, and how it will
behave for sparse types such as aligned matrices.
3 years ago
Vladimír Vondruš
bbd7ccedb1
python: expose trade.SceneData basics together with importer APIs.
...
No data access yet, that'll come later.
3 years ago
Vladimír Vondruš
d20727c995
python: move MeshData.attribute_id() info to the relevant function.
3 years ago
Vladimír Vondruš
d95c60942b
python: implement handling for custom trade.MeshAttribute values.
...
So it's possible to create them, print them and get the custom ID back.
Will be also used for SceneField and other yet-to-be-exposed enums.
3 years ago
Vladimír Vondruš
d75f31e854
python: expose new linear RGB(A) conversion APIs from Color.
3 years ago
Vladimír Vondruš
a45fbb84da
python: handle Windows path insanities in the bindings directly.
...
Otherwise people wouldn't be able to conveniently use os.path, which is
an undesirable pain point. And do this for all currently exposed APIs,
not just the AbstractImporter that caused a problem.
This reverts commit 28497ec2ca .
3 years ago
Vladimír Vondruš
c78cc3fd13
python: expose the BUILD_DEPRECATED constants as well.
...
Ugh, I thought I would never need them but then there are plugin
features depending on this and it's A MESS.
3 years ago
Vladimír Vondruš
56dd4b4a36
python: updated changelog.
3 years ago
Vladimír Vondruš
d106fc09d7
python: direct access to trade.MeshData indices and attributes.
...
In concrete types. Yes. Well, some of them for now, I still need to
sleep on normalized and matrix types, how it makes the most sense to
expose those. Oh, and array attributes as well.
3 years ago
Vladimír Vondruš
211bd5f0a8
python: mutable access to trade.MeshData raw index/vertex data.
...
Not much useful on its own, but it's a prep for what comes next.
3 years ago
Vladimír Vondruš
cca2eaf659
python: expose all index/attribute property queries in trade.MeshData.
...
Except for the actual data access, that'll be done next. Also updated
the mesh test file with more useful contents.
3 years ago
Vladimír Vondruš
2bc0748c05
doc: updated changelog.
3 years ago
Vladimír Vondruš
9bce5cfea7
doc: mention how to upgrade HEAD Homebrew packages.
4 years ago
Vladimír Vondruš
50c7f1294a
doc: there already *is* a stable version.
...
It's just half a century old.
4 years ago
Stanislaw Halik
585d136777
CMake: fix test build when Magnum is not in a shared include path.
4 years ago
Vladimír Vondruš
7a47c41eb7
doc: updated changelog.
4 years ago
Vladimír Vondruš
b983d29acf
python: avoid an assertion in trade.MeshData.index_count.
...
Emit a Python exception instead.
4 years ago
Vladimír Vondruš
bce7509e87
python: expose also platform.*.Application.dpi_scaling.
...
For some reason only window and framebuffer size was exposed but not
this. Made DPI-aware calculations impossible to do.
4 years ago
Vladimír Vondruš
c4105cb052
doc: update changelog.
4 years ago
Vladimír Vondruš
9e8b846418
doc: updated changelog.
4 years ago
Vladimír Vondruš
c72d7146b5
doc: forgot to list the Developers Guide among pages.
4 years ago
Vladimír Vondruš
732a0b795a
doc: add a checklist for adding a new Python module.
...
Because there's a lot of places and I somehow mess that up regularly.
4 years ago
Vladimír Vondruš
1d662bcd48
CMake: add a MAGNUM_PYTHON_BINDINGS_STATIC_PLUGINS CMake option.
...
Similar to the new options for Magnum command-line utilities.
4 years ago
Vladimír Vondruš
7362ff92dc
Adapt to Magnum changes.
4 years ago
Vladimír Vondruš
f4b5d915d9
python: bind also the vector shaders.
...
Last missing piece for the Python text example.
4 years ago
Vladimír Vondruš
9b60dd30b0
python: fix inconsistencies in bound Flat and Phong feature sets.
...
Phong has instancing and texture transformation so Flat should have that
too. Also fixed a bunch of doc omissions; there's no need to bind the
POSITION attribute the hard way either.
4 years ago
Vladimír Vondruš
137211b2b2
doc: a very hacky way to make python shader docs a bit more readable.
4 years ago
Vladimír Vondruš
e6fdfd7d8e
python: expose the essentials from the Text library.
...
Everything needed to make a Python variant of the Text example. The
Oxygen.ttf font file is the same as in MagnumPlugins/FreeTypeFont/Test
in the magnum-plugins repository.
4 years ago
Vladimír Vondruš
6a161d5044
doc: it's almost 2023, update the copyright year already.
4 years ago
Vladimír Vondruš
62a07c38bc
python: adapt to Magnum changes.
4 years ago
Vladimír Vondruš
737ec6c415
Prefix all CMake options with MAGNUM_*.
4 years ago
Vladimír Vondruš
24f2242842
doc: updated changelog.
4 years ago
Vladimír Vondruš
9d916eeae6
Don't use git://.
4 years ago
Vladimír Vondruš
a79bc39f3e
python: ability to import images and meshes by name.
4 years ago
Vladimír Vondruš
c2e2a8e520
python: expose basics of trade.AbstractSceneConverter.
4 years ago
Vladimír Vondruš
da21863ac7
python: exposed basics of trade.AbstractImageConverter.
4 years ago
Vladimír Vondruš
8e8a03e175
python: use AssertionError for trade.AbstractImporter usage errors.
...
Because using RuntimeError conflates with import failures. Also update
and fix docs to not show ValueError for where IndexError should be.
4 years ago
Vladimír Vondruš
ca4a35e78c
doc: updated changelog.
4 years ago
Vladimír Vondruš
2295f43873
Updated copyright year.
4 years ago
Vladimír Vondruš
ae23365869
Bye, Travis! You won't be missed.
4 years ago
Vladimír Vondruš
0eade80567
python: expose RGB<->XYZ conversion utilities.
...
I just needed to calculate expected output for a doc snippet, that's
all.
4 years ago
Vladimír Vondruš
7dc03d59aa
doc: updated changelog and credits.
4 years ago
Vladimír Vondruš
0120b3f768
python: add remaining vector/scalar, exp and other math functions.
...
Except for binomial coefficient, there the asserts are hard to replicate
and would need a change on Magnum side.
4 years ago
Vladimír Vondruš
24921c7409
Doc++
4 years ago
Vladimír Vondruš
5994150a68
python: expose glfw.Application.{swap_interval,main_loop_iteration}.
...
The first one was for some reason not exposed because it's a write-only
property (but all shaders have writeonly properites, so what's the
problem?), the second one got added in 2020.06 but the code here was not
updated.
5 years ago