Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSybren A. Stüvel <sybren@stuvel.eu>2019-04-12 15:51:17 +0300
committerSybren A. Stüvel <sybren@stuvel.eu>2019-04-12 15:52:09 +0300
commit45b810e1f8b088f3dc5329cfb0fe01092a156a6c (patch)
tree59023eb2c0e430132f38aed42ec004fa0c76d8c7
parent2396d7faa59c8e64c17b13ac19ef97854389afcc (diff)
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.
-rw-r--r--source/blender/alembic/intern/abc_object.cc10
1 files changed, 4 insertions, 6 deletions
diff --git a/source/blender/alembic/intern/abc_object.cc b/source/blender/alembic/intern/abc_object.cc
index 20a43a821ed..d8bd92121aa 100644
--- a/source/blender/alembic/intern/abc_object.cc
+++ b/source/blender/alembic/intern/abc_object.cc
@@ -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;
}