Browse Source

Trade: full scene conversion support in AbstractSceneConverter.

Wasn't really possible to split this into multiple commits, so here's
the whole thing including delegation from and to the single-mesh APIs.
What's not done here and postponed for later is:

 - an ability to feed the whole importer to it, filtering away data that
   aren't supported by the converter
 - corresponding changes in AbstractImageConverter, where it would now
   primarily accept ImageData to future-proof for arbitrary extra
   key/value data
pull/592/head
Vladimír Vondruš 4 years ago
parent
commit
150d045275
  1. 3
      doc/changelog.dox
  2. 1044
      src/Magnum/Trade/AbstractSceneConverter.cpp
  3. 1754
      src/Magnum/Trade/AbstractSceneConverter.h
  4. 4438
      src/Magnum/Trade/Test/AbstractSceneConverterTest.cpp
  5. 2
      src/MagnumPlugins/AnySceneConverter/AnySceneConverter.cpp

3
doc/changelog.dox

@ -285,6 +285,9 @@ See also:
- New @ref Trade::SkinData class and @ref Trade::AbstractImporter::skin2D() /
@ref Trade::AbstractImporter::skin3D() family of APIs for skin import, as
well as support in @ref Trade::AnySceneImporter "AnySceneImporter"
- The @ref Trade::AbstractSceneConverter plugin interface gained support for
batch conversion of whole scenes --- meshes, hierarchies, materials,
textures, animations and other data
- 1D and 3D image support in @ref Trade::AbstractImageConverter
- @ref Trade::LightData got extended to support light attenuation and range
parameters as well and spot light inner and outer angle

1044
src/Magnum/Trade/AbstractSceneConverter.cpp

File diff suppressed because it is too large Load Diff

1754
src/Magnum/Trade/AbstractSceneConverter.h

File diff suppressed because it is too large Load Diff

4438
src/Magnum/Trade/Test/AbstractSceneConverterTest.cpp

File diff suppressed because it is too large Load Diff

2
src/MagnumPlugins/AnySceneConverter/AnySceneConverter.cpp

@ -98,4 +98,4 @@ bool AnySceneConverter::doConvertToFile(const MeshData& mesh, const Containers::
}}
CORRADE_PLUGIN_REGISTER(AnySceneConverter, Magnum::Trade::AnySceneConverter,
"cz.mosra.magnum.Trade.AbstractSceneConverter/0.1.2")
"cz.mosra.magnum.Trade.AbstractSceneConverter/0.2")

Loading…
Cancel
Save