[Bf-blender-cvs] [504d45b] alembic_basic_io: Fix for missing modifier update when enabling the new depsgraph.
Kévin Dietrich
noreply at git.blender.org
Fri Jun 3 21:28:40 CEST 2016
Commit: 504d45bad0bc0ce4264da83b92efe83568074266
Author: Kévin Dietrich
Date: Fri Jun 3 21:09:44 2016 +0200
Branches: alembic_basic_io
https://developer.blender.org/rB504d45bad0bc0ce4264da83b92efe83568074266
Fix for missing modifier update when enabling the new depsgraph.
===================================================================
M source/blender/alembic/intern/abc_hair.cc
M source/blender/alembic/intern/abc_mesh.cc
M source/blender/alembic/intern/abc_object.cc
M source/blender/alembic/intern/abc_object.h
M source/blender/alembic/intern/abc_points.cc
===================================================================
diff --git a/source/blender/alembic/intern/abc_hair.cc b/source/blender/alembic/intern/abc_hair.cc
index c525804..6cca00d 100644
--- a/source/blender/alembic/intern/abc_hair.cc
+++ b/source/blender/alembic/intern/abc_hair.cc
@@ -365,6 +365,6 @@ void AbcHairReader::readObjectData(Main *bmain, Scene *scene, float time)
cu->actvert = CU_ACT_NONE;
if (m_settings->is_sequence || !m_curves_schema.isConstant()) {
- addDefaultModifier();
+ addDefaultModifier(bmain);
}
}
diff --git a/source/blender/alembic/intern/abc_mesh.cc b/source/blender/alembic/intern/abc_mesh.cc
index 7ef30a3..dda2523 100644
--- a/source/blender/alembic/intern/abc_mesh.cc
+++ b/source/blender/alembic/intern/abc_mesh.cc
@@ -1154,7 +1154,7 @@ void AbcMeshReader::readObjectData(Main *bmain, Scene *scene, float time)
}
if (m_settings->is_sequence || !is_constant) {
- addDefaultModifier();
+ addDefaultModifier(bmain);
}
}
diff --git a/source/blender/alembic/intern/abc_object.cc b/source/blender/alembic/intern/abc_object.cc
index 21297d3..ddaa5d3 100644
--- a/source/blender/alembic/intern/abc_object.cc
+++ b/source/blender/alembic/intern/abc_object.cc
@@ -32,6 +32,7 @@ extern "C" {
#include "DNA_object_types.h"
#include "BKE_constraint.h"
+#include "BKE_depsgraph.h"
#include "BKE_idprop.h"
#include "BKE_modifier.h"
#include "BKE_object.h"
@@ -40,8 +41,6 @@ extern "C" {
#include "BLI_math.h"
#include "BLI_utildefines.h"
#include "BLI_string.h"
-
-#include "BKE_depsgraph.h"
}
using Alembic::AbcGeom::IObject;
@@ -408,7 +407,7 @@ void AbcObjectReader::readObjectMatrix(const float time)
}
}
-void AbcObjectReader::addDefaultModifier() const
+void AbcObjectReader::addDefaultModifier(Main *bmain) const
{
ModifierData *md = modifier_new(eModifierType_MeshSequenceCache);
BLI_addtail(&m_object->modifiers, md);
@@ -418,4 +417,7 @@ void AbcObjectReader::addDefaultModifier() const
BLI_strncpy(mcmd->filepath, m_iobject.getArchive().getName().c_str(), 1024);
BLI_strncpy(mcmd->abc_object_path, m_iobject.getFullName().c_str(), 1024);
mcmd->is_sequence = m_settings->is_sequence;
+
+ DAG_id_tag_update(&m_object->id, OB_RECALC_DATA);
+ DAG_relations_tag_update(bmain);
}
diff --git a/source/blender/alembic/intern/abc_object.h b/source/blender/alembic/intern/abc_object.h
index e242d4e..db45334 100644
--- a/source/blender/alembic/intern/abc_object.h
+++ b/source/blender/alembic/intern/abc_object.h
@@ -123,5 +123,5 @@ public:
void readObjectMatrix(const float time);
- void addDefaultModifier() const;
+ void addDefaultModifier(Main *bmain) const;
};
diff --git a/source/blender/alembic/intern/abc_points.cc b/source/blender/alembic/intern/abc_points.cc
index 8276d72..ef66140 100644
--- a/source/blender/alembic/intern/abc_points.cc
+++ b/source/blender/alembic/intern/abc_points.cc
@@ -164,6 +164,6 @@ void AbcPointsReader::readObjectData(Main *bmain, Scene *scene, float time)
m_object->data = mesh;
if (m_settings->is_sequence || !m_schema.isConstant()) {
- addDefaultModifier();
+ addDefaultModifier(bmain);
}
}
More information about the Bf-blender-cvs
mailing list