Blender Git Commit Log

Git Commits -> Revision 05184e8

Revision 05184e8 by Kévin Dietrich (temp-abc-features)
October 7, 2021, 01:29 (GMT)
Alembic: generic attribute import

This adds support for reading arbitrary attributes from Alembic
archives.

This is for now only supported for meshes and point clouds (as it reuses
the CDStreamConfig from the Mesh), although it is being made generic
with the usage of an ID and Blender's attribute API. Attributes are
added either on points, face corners, or faces depending on their
original scope.

In order to choose which attributes to load, parameters are added to let
users input the names of the attributes. The names have to be comma
separated, and are segregated by domain (point, face, face corners). A
wildcard (*) can be used to load every attribute of the domain.

Since some software export vector or color attributes as a flat array of
floats, a mechanism to remap attributes is added and accessible through
the user interface. Remapping is only available for float and double
types. The arrays can be remapped to UV maps, vertex colors, float2,
float3, color types, and vertex groups.

Supported attribute types are bool, int, float, 2D & 3D vectors, uvs,
and colors, as well as double precision versions of those.

Commit Details:

Full Hash: 05184e8276b92ec4385b114e91fec6b7e0011abe
Parent Commit: 5cf5e60
Lines Changed: +1932, -461

25 Modified Paths:

/source/blender/blenkernel/BKE_cachefile.h (+4, -0) (Diff)
/source/blender/blenkernel/intern/cachefile.c (+16, -0) (Diff)
/source/blender/editors/interface/interface_intern.h (+3, -0) (Diff)
/source/blender/editors/interface/interface_templates.c (+53, -0) (Diff)
/source/blender/editors/interface/interface_template_list.cc (+1, -0) (Diff)
/source/blender/editors/io/io_cache.c (+89, -0) (Diff)
/source/blender/editors/io/io_cache.h (+3, -0) (Diff)
/source/blender/editors/io/io_ops.c (+3, -0) (Diff)
/source/blender/io/alembic/ABC_alembic.h (+15, -5) (Diff)
/source/blender/io/alembic/intern/abc_customdata.cc (+1336, -184) (Diff)
/source/blender/io/alembic/intern/abc_customdata.h (+88, -21) (Diff)
/source/blender/io/alembic/intern/abc_reader_curves.cc (+1, -1) (Diff)
/source/blender/io/alembic/intern/abc_reader_curves.h (+1, -1) (Diff)
/source/blender/io/alembic/intern/abc_reader_mesh.cc (+40, -221) (Diff)
/source/blender/io/alembic/intern/abc_reader_mesh.h (+6, -3) (Diff)
/source/blender/io/alembic/intern/abc_reader_object.cc (+1, -1) (Diff)
/source/blender/io/alembic/intern/abc_reader_object.h (+3, -3) (Diff)
/source/blender/io/alembic/intern/abc_reader_points.cc (+4, -3) (Diff)
/source/blender/io/alembic/intern/abc_reader_points.h (+1, -1) (Diff)
/source/blender/io/alembic/intern/alembic_capi.cc (+29, -8) (Diff)
/source/blender/makesdna/DNA_cachefile_defaults.h (+4, -0) (Diff)
/source/blender/makesdna/DNA_cachefile_types.h (+41, -1) (Diff)
/source/blender/makesrna/intern/rna_cachefile.c (+178, -0) (Diff)
/source/blender/makesrna/RNA_access.h (+1, -0) (Diff)
/source/blender/modifiers/intern/MOD_meshsequencecache.c (+11, -8) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021