Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSybren A. Stüvel <sybren@stuvel.eu>2017-04-06 15:22:28 +0300
committerSybren A. Stüvel <sybren@stuvel.eu>2017-04-06 17:47:01 +0300
commit8e3676d5337b1faebf7e2afdf94051769eaf1347 (patch)
tree296f1fb79327ac0bd50e100c5f65637ad28b30c0 /source/blender/alembic/intern/abc_object.h
parentfa827374a7a0d51e71e974eb91299b15beb3d54e (diff)
Alembic import: restructured the importer w.g.t. parenthood
Previously, a GHash was used to store a flattened mapping of parent information based on the Alembic hierarchy, and then that hash was used to set parent pointers on Blender objects. This resulted in errors and some duplicate objects. The new approach stores parent pointers while traversing the Alembic hierarchy, which means that there is much more information about the actual context of the Alembic object itself, producing a more stable import.
Diffstat (limited to 'source/blender/alembic/intern/abc_object.h')
-rw-r--r--source/blender/alembic/intern/abc_object.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/alembic/intern/abc_object.h b/source/blender/alembic/intern/abc_object.h
index 2e3c3531453..d5344533b55 100644
--- a/source/blender/alembic/intern/abc_object.h
+++ b/source/blender/alembic/intern/abc_object.h
@@ -144,12 +144,17 @@ protected:
int m_refcount;
public:
+ AbcObjectReader *parent_reader;
+
+public:
explicit AbcObjectReader(const Alembic::Abc::IObject &object, ImportSettings &settings);
virtual ~AbcObjectReader();
const Alembic::Abc::IObject &iobject() const;
+ typedef std::vector<AbcObjectReader *> ptr_vector;
+
/**
* Returns the transform of this object. This can be the Alembic object
* itself (in case of an Empty) or it can be the parent Alembic object.