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
path: root/intern
diff options
context:
space:
mode:
authorKévin Dietrich <kevin.dietrich@mailoo.org>2021-03-12 01:51:54 +0300
committerKévin Dietrich <kevin.dietrich@mailoo.org>2021-03-12 02:15:16 +0300
commit7a028d5b997e6f0fd2da3d6446943d2b9059f9d9 (patch)
tree4b78e8ae7903165e6fbd46e0fe57a1473dc3d55f /intern
parent62e2fdf40b6fa19e10f9aea5ee1a7344b2e9e88f (diff)
Alembic procedural: fix missing attribute update
We need to explicitely tag the Attribute and AttributeSet as modified if we change or add/remove data. This is more of a bandaid until attributes handling is refactored to be able to reuse routines from the Attribute API.
Diffstat (limited to 'intern')
-rw-r--r--intern/cycles/render/alembic.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/intern/cycles/render/alembic.cpp b/intern/cycles/render/alembic.cpp
index abe4dea0b3e..1af38aa247e 100644
--- a/intern/cycles/render/alembic.cpp
+++ b/intern/cycles/render/alembic.cpp
@@ -1284,6 +1284,7 @@ static void update_attributes(AttributeSet &attributes, CachedData &cached_data,
}
memcpy(attr->data(), attr_data->data(), attr_data->size());
+ attr->modified = true;
}
/* remove any attributes not in cached_attributes */
@@ -1291,6 +1292,7 @@ static void update_attributes(AttributeSet &attributes, CachedData &cached_data,
for (it = attributes.attributes.begin(); it != attributes.attributes.end();) {
if (cached_attributes.find(&(*it)) == cached_attributes.end()) {
attributes.attributes.erase(it++);
+ attributes.modified = true;
continue;
}