From 10c50d7dbf7578b35b3bf19a1948f556f9eb203b Mon Sep 17 00:00:00 2001 From: Gaia Clary Date: Tue, 4 Dec 2018 19:11:33 +0100 Subject: fix T58568 build errors when using collada 1.6.68 or newer --- source/blender/collada/CMakeLists.txt | 12 ++++++++++++ source/blender/collada/DocumentImporter.cpp | 13 +++++++++++++ source/blender/collada/DocumentImporter.h | 7 +++++-- 3 files changed, 30 insertions(+), 2 deletions(-) (limited to 'source/blender/collada') diff --git a/source/blender/collada/CMakeLists.txt b/source/blender/collada/CMakeLists.txt index 293049a1a05..c250384b989 100644 --- a/source/blender/collada/CMakeLists.txt +++ b/source/blender/collada/CMakeLists.txt @@ -25,6 +25,18 @@ remove_strict_flags() +FIND_FILE(_opencollada_with_animation_clip + NAMES + COLLADAFWAnimationClip.h + PATHS + ${OPENCOLLADA_INCLUDE_DIRS} + NO_DEFAULT_PATH + ) + +IF(_opencollada_with_animation_clip) + add_compile_definitions(OPENCOLLADA_WITH_ANIMATION_CLIP) +ENDIF() + set(INC . ../blenkernel diff --git a/source/blender/collada/DocumentImporter.cpp b/source/blender/collada/DocumentImporter.cpp index 67fd9d648c7..24b7fc4317d 100644 --- a/source/blender/collada/DocumentImporter.cpp +++ b/source/blender/collada/DocumentImporter.cpp @@ -1349,6 +1349,19 @@ bool DocumentImporter::writeAnimationList(const COLLADAFW::AnimationList *animat return anim_importer.write_animation_list(animationList); } +#if OPENCOLLADA_WITH_ANIMATION_CLIP +// Since opencollada 1.6.68 +// called on post-process stage after writeVisualScenes +bool DocumentImporter::writeAnimationClip(const COLLADAFW::AnimationClip *AnimationClip) +{ + if (mImportStage != General) + return true; + + return true; + //return animation_clip_importer.write_animation_clip(animationClip); // TODO: implement import of AnimationClips +} +#endif + /** When this method is called, the writer must write the skin controller data. * \return The writer should return true, if writing succeeded, false otherwise.*/ bool DocumentImporter::writeSkinControllerData(const COLLADAFW::SkinControllerData *skin) diff --git a/source/blender/collada/DocumentImporter.h b/source/blender/collada/DocumentImporter.h index 17e61326032..5e9f899d42c 100644 --- a/source/blender/collada/DocumentImporter.h +++ b/source/blender/collada/DocumentImporter.h @@ -49,8 +49,6 @@ #include "MeshImporter.h" #include "ImportSettings.h" - - struct bContext; /** Importer class. */ @@ -108,6 +106,11 @@ public: bool writeAnimationList(const COLLADAFW::AnimationList*); +#if OPENCOLLADA_WITH_ANIMATION_CLIP + // Please enable this when building with Collada 1.6.65 or newer (also in DocumentImporter.cpp) + bool DocumentImporter::writeAnimationClip(const COLLADAFW::AnimationClip *AnimationClip); +#endif + bool writeGeometry(const COLLADAFW::Geometry*); bool writeMaterial(const COLLADAFW::Material*); -- cgit v1.2.3