diff options
author | Sybren A. Stüvel <sybren@blender.org> | 2020-09-08 17:15:49 +0300 |
---|---|---|
committer | Sybren A. Stüvel <sybren@blender.org> | 2020-09-08 17:41:59 +0300 |
commit | b3759cc0d67eeb8cec55314d3304db0bc02168af (patch) | |
tree | 83903d61963f58e93702bced40d23b27050381ad /source/blender/io/alembic/CMakeLists.txt | |
parent | 8f4f9275cea6602e74eecf7e9a88c101f9cc5245 (diff) |
Alembic Export: support instanced object data
Add support for object data instancing. This is used when the objects
are instances, for example when duplicated by a particle system, or
instanced by the duplication system (collection-duplicating empties,
vertex/face duplis, etc.)
Since Alembic already deduplicates data, this doesn't make the resulting
Alembic files any smaller. They will be faster to write, though, when
there is a lot of instanced geometry, as the deduplication system won't
have to do any comparisons.
This instancing support is still limited, in the sense that only object
data is instanced and all transforms are still written explicitly. A
future improvement could be to support instancing entire collection
hierarchies.
Blender's Alembic importer has no understanding of these Alembic
instances yet, and will thus happily duplicate the data on import.
The USD Alembic plugin seems to have problems understanding the
instancing. There might also be other software with similar issues.
Because of this, instancing can be turned off in the exporter (it's on
by default).
Diffstat (limited to 'source/blender/io/alembic/CMakeLists.txt')
-rw-r--r-- | source/blender/io/alembic/CMakeLists.txt | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/io/alembic/CMakeLists.txt b/source/blender/io/alembic/CMakeLists.txt index de99a2c9d65..2b44146e475 100644 --- a/source/blender/io/alembic/CMakeLists.txt +++ b/source/blender/io/alembic/CMakeLists.txt @@ -63,6 +63,7 @@ set(SRC exporter/abc_writer_camera.cc exporter/abc_writer_curves.cc exporter/abc_writer_hair.cc + exporter/abc_writer_instance.cc exporter/abc_writer_mball.cc exporter/abc_writer_mesh.cc exporter/abc_writer_nurbs.cc @@ -89,6 +90,7 @@ set(SRC exporter/abc_writer_camera.h exporter/abc_writer_curves.h exporter/abc_writer_hair.h + exporter/abc_writer_instance.h exporter/abc_writer_mball.h exporter/abc_writer_mesh.h exporter/abc_writer_nurbs.h |