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:
authorDalai Felinto <dfelinto@gmail.com>2017-11-15 18:52:47 +0300
committerDalai Felinto <dfelinto@gmail.com>2017-11-22 12:13:33 +0300
commit0a6df6b173c5af2a38d2b808634adb2c6432ce3e (patch)
tree9247037f0857b4a9466bd145675989b78c384749 /source/blender/blenloader
parentcb67be3f22c4d139ad43d6863ceea168d7872070 (diff)
Doversion: We should always add the old RenderLayer
We cannot assume a render layer does not have a setting that was needed for compositing. Even if: ``` (scene->lay & render_layer->lay) != (scene_lay) && (render_layer->lay | render_layer->lay_exclude) == 0)) ``` Which would mean use the scene layers just as they are.
Diffstat (limited to 'source/blender/blenloader')
-rw-r--r--source/blender/blenloader/intern/versioning_280.c62
1 files changed, 30 insertions, 32 deletions
diff --git a/source/blender/blenloader/intern/versioning_280.c b/source/blender/blenloader/intern/versioning_280.c
index 8d057330822..32aa908fe86 100644
--- a/source/blender/blenloader/intern/versioning_280.c
+++ b/source/blender/blenloader/intern/versioning_280.c
@@ -324,45 +324,43 @@ void do_versions_after_linking_280(Main *main)
(ID *)srl->mat_override);
}
- if (srl->lay != scene->lay) {
- /* unlink master collection */
- BKE_collection_unlink(scene_layer, scene_layer->layer_collections.first);
-
- /* Add new collection bases. */
- for (int layer = 0; layer < 20; layer++) {
- if ((scene->lay & srl->lay & ~(srl->lay_exclude) & (1 << layer)) ||
- (srl->lay_zmask & (scene->lay | srl->lay_exclude) & (1 << layer)))
- {
- if (collections[DO_VERSION_COLLECTION_VISIBLE].created & (1 << layer)) {
-
- LayerCollection *layer_collection_parent;
- layer_collection_parent = BKE_collection_link(scene_layer,
- collections[DO_VERSION_COLLECTION_VISIBLE].collections[layer]);
-
- if (srl->lay_zmask & (1 << layer)) {
- BKE_override_layer_collection_boolean_add(
- layer_collection_parent,
- ID_OB,
- "cycles.is_holdout",
- true);
- }
+ /* unlink master collection */
+ BKE_collection_unlink(scene_layer, scene_layer->layer_collections.first);
- LayerCollection *layer_collection_child;
- layer_collection_child = layer_collection_parent->layer_collections.first;
+ /* Add new collection bases. */
+ for (int layer = 0; layer < 20; layer++) {
+ if ((scene->lay & srl->lay & ~(srl->lay_exclude) & (1 << layer)) ||
+ (srl->lay_zmask & (scene->lay | srl->lay_exclude) & (1 << layer)))
+ {
+ if (collections[DO_VERSION_COLLECTION_VISIBLE].created & (1 << layer)) {
+
+ LayerCollection *layer_collection_parent;
+ layer_collection_parent = BKE_collection_link(scene_layer,
+ collections[DO_VERSION_COLLECTION_VISIBLE].collections[layer]);
+
+ if (srl->lay_zmask & (1 << layer)) {
+ BKE_override_layer_collection_boolean_add(
+ layer_collection_parent,
+ ID_OB,
+ "cycles.is_holdout",
+ true);
+ }
- for (int j = 1; j < 4; j++) {
- if (collections[j].created & (1 << layer)) {
- layer_collection_child->flag = collections[j].flag_render & (~COLLECTION_DISABLED);
+ LayerCollection *layer_collection_child;
+ layer_collection_child = layer_collection_parent->layer_collections.first;
- if (collections[j].flag_render & COLLECTION_DISABLED) {
- BKE_collection_disable(scene_layer, layer_collection_child);
- }
+ for (int j = 1; j < 4; j++) {
+ if (collections[j].created & (1 << layer)) {
+ layer_collection_child->flag = collections[j].flag_render & (~COLLECTION_DISABLED);
- layer_collection_child = layer_collection_child->next;
+ if (collections[j].flag_render & COLLECTION_DISABLED) {
+ BKE_collection_disable(scene_layer, layer_collection_child);
}
+
+ layer_collection_child = layer_collection_child->next;
}
- BLI_assert(layer_collection_child == NULL);
}
+ BLI_assert(layer_collection_child == NULL);
}
}
}