Blender Git Loki
Git Commits -> Revision e08fe0d
Revision e08fe0d by Kévin Dietrich (temp-abc-features) October 7, 2021, 03:47 (GMT) |
Alembic: use GeometrySets in the modifier This uses GeometrySets to import data from Alembic cache. The main idea is to easily extend the modifier's capabilities by directly generating an object of the right type instead of always outputing a Mesh. This will also make it much easier to use Alembic objects from Geometry nodes until a Alembic node is available there, and can be considered a first step to supporting such a node. For meshes, nothing really changes. For points, a PointCloud object is generated, which can also be used inside of Geometry nodes. The radius information is also read now, as well as arbitrary attributes. For curves, the CurveEval is directly modified if the data did not change. Otherwise, we keep the current behavior of modifying the original Curve object and create a new CurveEval from it. |
Commit Details:
Full Hash: e08fe0daa0ebb57f03f0f64fc51ebdead305dd5a
Parent Commit: 05184e8
Lines Changed: +899, -576
1 Added Path:
/source/blender/modifiers/intern/MOD_meshsequencecache.cc (+485, -0) (View)
1 Deleted Path:
/source/blender/modifiers/intern/MOD_meshsequencecache.c (+0, -383)
19 Modified Paths:
/source/blender/blenkernel/BKE_modifier.h (+4, -0) (Diff)
/source/blender/blenkernel/BKE_pointcloud.h (+1, -0) (Diff)
/source/blender/blenkernel/intern/displist.cc (+4, -4) (Diff)
/source/blender/blenkernel/intern/modifier.c (+25, -0) (Diff)
/source/blender/blenkernel/intern/pointcloud.cc (+38, -0) (Diff)
/source/blender/editors/io/io_cache.c (+2, -0) (Diff)
/source/blender/io/alembic/ABC_alembic.h (+12, -6) (Diff)
/source/blender/io/alembic/CMakeLists.txt (+1, -0) (Diff)
/source/blender/io/alembic/intern/abc_reader_curves.cc (+141, -106) (Diff)
/source/blender/io/alembic/intern/abc_reader_curves.h (+7, -6) (Diff)
/source/blender/io/alembic/intern/abc_reader_mesh.cc (+43, -0) (Diff)
/source/blender/io/alembic/intern/abc_reader_mesh.h (+24, -7) (Diff)
/source/blender/io/alembic/intern/abc_reader_object.cc (+10, -10) (Diff)
/source/blender/io/alembic/intern/abc_reader_object.h (+9, -6) (Diff)
/source/blender/io/alembic/intern/abc_reader_points.cc (+70, -26) (Diff)
/source/blender/io/alembic/intern/abc_reader_points.h (+6, -6) (Diff)
/source/blender/io/alembic/intern/alembic_capi.cc (+15, -15) (Diff)
/source/blender/makesrna/intern/rna_cachefile.c (+1, -0) (Diff)
/source/blender/modifiers/CMakeLists.txt (+1, -1) (Diff)
/source/blender/blenkernel/BKE_pointcloud.h (+1, -0) (Diff)
/source/blender/blenkernel/intern/displist.cc (+4, -4) (Diff)
/source/blender/blenkernel/intern/modifier.c (+25, -0) (Diff)
/source/blender/blenkernel/intern/pointcloud.cc (+38, -0) (Diff)
/source/blender/editors/io/io_cache.c (+2, -0) (Diff)
/source/blender/io/alembic/ABC_alembic.h (+12, -6) (Diff)
/source/blender/io/alembic/CMakeLists.txt (+1, -0) (Diff)
/source/blender/io/alembic/intern/abc_reader_curves.cc (+141, -106) (Diff)
/source/blender/io/alembic/intern/abc_reader_curves.h (+7, -6) (Diff)
/source/blender/io/alembic/intern/abc_reader_mesh.cc (+43, -0) (Diff)
/source/blender/io/alembic/intern/abc_reader_mesh.h (+24, -7) (Diff)
/source/blender/io/alembic/intern/abc_reader_object.cc (+10, -10) (Diff)
/source/blender/io/alembic/intern/abc_reader_object.h (+9, -6) (Diff)
/source/blender/io/alembic/intern/abc_reader_points.cc (+70, -26) (Diff)
/source/blender/io/alembic/intern/abc_reader_points.h (+6, -6) (Diff)
/source/blender/io/alembic/intern/alembic_capi.cc (+15, -15) (Diff)
/source/blender/makesrna/intern/rna_cachefile.c (+1, -0) (Diff)
/source/blender/modifiers/CMakeLists.txt (+1, -1) (Diff)