Blender V4.3
AnimationClipExporter.cpp
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2018-2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
6#include "GeometryExporter.h"
7#include "MaterialExporter.h"
8
10{
11 openLibrary();
12 std::map<std::string, COLLADASW::ColladaAnimationClip *> clips;
13
14 std::vector<std::vector<std::string>>::iterator anim_meta_entry;
15 for (anim_meta_entry = anim_meta.begin(); anim_meta_entry != anim_meta.end(); ++anim_meta_entry)
16 {
17 std::vector<std::string> entry = *anim_meta_entry;
18 std::string action_id = entry[0];
19 std::string action_name = entry[1];
20
21 std::map<std::string, COLLADASW::ColladaAnimationClip *>::iterator it = clips.find(
22 action_name);
23 if (it == clips.end()) {
24 COLLADASW::ColladaAnimationClip *clip = new COLLADASW::ColladaAnimationClip(action_name);
25 clips[action_name] = clip;
26 }
27 COLLADASW::ColladaAnimationClip *clip = clips[action_name];
28 clip->setInstancedAnimation(action_id);
29 }
30
31 std::map<std::string, COLLADASW::ColladaAnimationClip *>::iterator clips_it;
32 for (clips_it = clips.begin(); clips_it != clips.end(); clips_it++) {
33 COLLADASW::ColladaAnimationClip *clip = (COLLADASW::ColladaAnimationClip *)clips_it->second;
34 addAnimationClip(*clip);
35 }
36
37 closeLibrary();
38}
void exportAnimationClips(Scene *sce)