diff --git a/doc/changelog.dox b/doc/changelog.dox index 351a37d32..36c6ad7c0 100644 --- a/doc/changelog.dox +++ b/doc/changelog.dox @@ -181,6 +181,8 @@ See also: next to file type detection based on filename - @ref Trade::AnyImageConverter "AnyImageConverter" learned detection of JPEG output +- @ref Trade::AnySceneImporter "AnySceneImporter" gained support for + animation import @subsection changelog-latest-changes Changes and improvements diff --git a/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.cpp b/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.cpp index bc6ba5928..6a0b0759e 100644 --- a/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.cpp +++ b/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.cpp @@ -29,6 +29,7 @@ #include #include #include "Magnum/Trade/AbstractMaterialData.h" +#include "Magnum/Trade/AnimationData.h" #include "Magnum/Trade/CameraData.h" #include "Magnum/Trade/ImageData.h" #include "Magnum/Trade/LightData.h" @@ -136,6 +137,11 @@ void AnySceneImporter::doOpenFile(const std::string& filename) { _in = std::move(importer); } +UnsignedInt AnySceneImporter::doAnimationCount() const { return _in->animationCount(); } +Int AnySceneImporter::doAnimationForName(const std::string& name) { return _in->animationForName(name); } +std::string AnySceneImporter::doAnimationName(const UnsignedInt id) { return _in->animationName(id); } +Containers::Optional AnySceneImporter::doAnimation(const UnsignedInt id) { return _in->animation(id); } + Int AnySceneImporter::doDefaultScene() { return _in->defaultScene(); } UnsignedInt AnySceneImporter::doSceneCount() const { return _in->sceneCount(); } diff --git a/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.h b/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.h index f6725f800..878c8fa51 100644 --- a/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.h +++ b/src/MagnumPlugins/AnySceneImporter/AnySceneImporter.h @@ -124,6 +124,11 @@ class MAGNUM_ANYSCENEIMPORTER_EXPORT AnySceneImporter: public AbstractImporter { MAGNUM_ANYSCENEIMPORTER_LOCAL void doClose() override; MAGNUM_ANYSCENEIMPORTER_LOCAL void doOpenFile(const std::string& filename) override; + MAGNUM_ANYSCENEIMPORTER_LOCAL UnsignedInt doAnimationCount() const override; + MAGNUM_ANYSCENEIMPORTER_LOCAL std::string doAnimationName(UnsignedInt id) override; + MAGNUM_ANYSCENEIMPORTER_LOCAL Int doAnimationForName(const std::string& name) override; + MAGNUM_ANYSCENEIMPORTER_LOCAL Containers::Optional doAnimation(UnsignedInt id) override; + MAGNUM_ANYSCENEIMPORTER_LOCAL Int doDefaultScene() override; MAGNUM_ANYSCENEIMPORTER_LOCAL UnsignedInt doSceneCount() const override;