Fix T61935 Crash when importing Alembic from Meshroom

The Alembic importer can now deal with XForm-less objects. Apparently
MeshLab exports point clouds without parent transformation matrix (XForm in
Alembic-speak). We shouldn't warn about this, but handle it properly
instead.
This commit is contained in:
Sybren A. Stüvel 2019-04-12 14:51:17 +02:00
parent 2396d7faa5
commit 45b810e1f8
Notes: blender-bot 2023-02-14 07:30:31 +01:00
Referenced by issue #63563, 2.8 Grease pencil drawings not visible when contained in a collection instanced in a foreign scene.
Referenced by issue #61935, Crash when importing Alembic from Meshroom
1 changed files with 4 additions and 6 deletions

View File

@ -290,12 +290,8 @@ Alembic::AbcGeom::IXform AbcObjectReader::xform()
return IXform(abc_parent, Alembic::AbcGeom::kWrapExisting);
}
/* Should not happen. */
std::cerr << "AbcObjectReader::xform(): "
<< "unable to find IXform for Alembic object '"
<< m_iobject.getFullName() << "'\n";
BLI_assert(false);
/* This can happen in certain cases. For example, MeshLab exports
* point clouds without parent XForm. */
return IXform();
}
@ -304,6 +300,8 @@ void AbcObjectReader::read_matrix(float r_mat[4][4], const float time,
{
IXform ixform = xform();
if (!ixform) {
unit_m4(r_mat);
is_constant = true;
return;
}