diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-08-27 12:47:56 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-08-27 12:47:56 +0300 |
commit | efc6f9438f3dc624b1d6156036bd57ddce952747 (patch) | |
tree | ddeb1ace156da128017413946bca06bc470716de /source/blender/depsgraph | |
parent | 8cd496672228507922172f3a20b65b59c1e42b0b (diff) |
OpenSubdiv: Tweaks to detecting whether geometry data is needed on GPU with new DEG
Diffstat (limited to 'source/blender/depsgraph')
-rw-r--r-- | source/blender/depsgraph/intern/depsgraph.cc | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/source/blender/depsgraph/intern/depsgraph.cc b/source/blender/depsgraph/intern/depsgraph.cc index 12b3a36b33e..2465654a723 100644 --- a/source/blender/depsgraph/intern/depsgraph.cc +++ b/source/blender/depsgraph/intern/depsgraph.cc @@ -357,9 +357,12 @@ DepsRelation *Depsgraph::add_new_relation(OperationDepsNode *from, #ifdef WITH_OPENSUBDIV if (type == DEPSREL_TYPE_GEOMETRY_EVAL) { IDDepsNode *id_to = to->owner->owner; - if ((id_to->eval_flags & DAG_EVAL_NEED_CPU) == 0) { - id_to->tag_update(this); - id_to->eval_flags |= DAG_EVAL_NEED_CPU; + IDDepsNode *id_from = to->owner->owner; + if (id_to != id_from) { + if ((id_to->eval_flags & DAG_EVAL_NEED_CPU) == 0) { + id_to->tag_update(this); + id_to->eval_flags |= DAG_EVAL_NEED_CPU; + } } } #endif |