diff options
author | Sybren A. Stüvel <sybren@stuvel.eu> | 2018-06-07 19:59:50 +0300 |
---|---|---|
committer | Sybren A. Stüvel <sybren@stuvel.eu> | 2018-06-08 16:51:49 +0300 |
commit | ba31c4d684c1bff0955df55b0b0566f15872aed5 (patch) | |
tree | 7e3c47a4751d0cf46eabf3d286c1f05ffc767730 /source | |
parent | 2a771cbc58f3b5406e7f4059d6cd91164bfb3a75 (diff) |
Alembic export: get evaluated object when exporting shape
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/alembic/intern/abc_exporter.cc | 10 | ||||
-rw-r--r-- | source/blender/alembic/intern/abc_exporter.h | 2 |
2 files changed, 5 insertions, 7 deletions
diff --git a/source/blender/alembic/intern/abc_exporter.cc b/source/blender/alembic/intern/abc_exporter.cc index cdb176ae02e..c766720d6cd 100644 --- a/source/blender/alembic/intern/abc_exporter.cc +++ b/source/blender/alembic/intern/abc_exporter.cc @@ -505,9 +505,9 @@ void AbcExporter::exploreObject(Base *ob_base, Object *dupliObParent) return; } - createShapeWriter(ob_base, dupliObParent); - - Object *ob = ob_base->object; + Object *ob = DEG_get_evaluated_object(m_settings.depsgraph, ob_base->object); + createShapeWriter(ob, dupliObParent); + ListBase *lb = object_duplilist(m_settings.depsgraph, m_settings.scene, ob); if (lb) { @@ -554,10 +554,8 @@ void AbcExporter::createParticleSystemsWriters(Object *ob, AbcTransformWriter *x } } -void AbcExporter::createShapeWriter(Base *ob_base, Object *dupliObParent) +void AbcExporter::createShapeWriter(Object *ob, Object *dupliObParent) { - Object *ob = ob_base->object; - if (!object_type_is_exportable(m_settings.scene, ob)) { return; } diff --git a/source/blender/alembic/intern/abc_exporter.h b/source/blender/alembic/intern/abc_exporter.h index a4d13b8e0d4..a92e426292c 100644 --- a/source/blender/alembic/intern/abc_exporter.h +++ b/source/blender/alembic/intern/abc_exporter.h @@ -120,7 +120,7 @@ private: void exploreTransform(Base *ob_base, Object *parent, Object *dupliObParent); void exploreObject(Base *ob_base, Object *dupliObParent); void createShapeWriters(); - void createShapeWriter(Base *ob_base, Object *dupliObParent); + void createShapeWriter(Object *ob, Object *dupliObParent); void createParticleSystemsWriters(Object *ob, AbcTransformWriter *xform); AbcTransformWriter *getXForm(const std::string &name); |