If the mesh was constant, no check was done if there were animated
vertex colors and thus creation of a MeshSequenceCache modifier was
skipped.
Details
Diff Detail
- Repository
- rB Blender
Event Timeline
Note that the missing writing of animated vertex colors already has its own task in T51488: Alembic export animated vertex color exports only first frame vertex color
Tested with files from T81330: Alembic Import does not apply `MeshSequenceCache` to all animated Meshes.
| source/blender/io/alembic/intern/abc_reader_mesh.cc | ||
|---|---|---|
| 503–510 | Here you can flip the conditions and return early. if (!typedGeomParam::matches(prop_header)) {
return false;
}
typedGeomParam color_param(arbGeomParams, prop_header.getName());
return color_param.valid() && !color_param.isConstant(); | |
| 504 | Given the parameters, it's no longer given that this is related to colour at all. Probably it's better to rename color_param to geom_param. | |
| 513 | has_animated_... reads more naturally. There is no guarantee that this function will only pick up on animated vertex colors, though. There could be other IC3fGeomParam or IC4fGeomParam that cause the function to return true. This should be reflected in the name of the function. | |
| 515 | I don't see how an ICompoundProperty can be nullptr. Maybe you mean to call .valid()? | |
| 526 | No else after return. | |
There still is the "No else after return" comment. That code will fail the next time you run Clang-Tidy.