[Bf-blender-cvs] [3265ed2d2e1] greasepencil-object: Fix grease pencil paper reset loading files

Antonio Vazquez noreply at git.blender.org
Sat Mar 24 13:46:18 CET 2018


Commit: 3265ed2d2e1d12ee7ee2fad0cddcd34332f82222
Author: Antonio Vazquez
Date:   Sat Mar 24 13:45:35 2018 +0100
Branches: greasepencil-object
https://developer.blender.org/rB3265ed2d2e1d12ee7ee2fad0cddcd34332f82222

Fix grease pencil paper reset loading files

The paper was reset loading any file, not only old files.

===================================================================

M	source/blender/blenloader/intern/versioning_280.c

===================================================================

diff --git a/source/blender/blenloader/intern/versioning_280.c b/source/blender/blenloader/intern/versioning_280.c
index f3c110a4989..bedb0c29781 100644
--- a/source/blender/blenloader/intern/versioning_280.c
+++ b/source/blender/blenloader/intern/versioning_280.c
@@ -668,19 +668,6 @@ void do_versions_after_linking_280(Main *main)
 			BKE_gpencil_batch_cache_dirty(ob->data);
 		}
 	}
-	/* init grease pencil grids and paper */
-	for (bScreen *screen = main->screen.first; screen; screen = screen->id.next) {
-		for (ScrArea *area = screen->areabase.first; area; area = area->next) {
-			for (SpaceLink *sl = area->spacedata.first; sl; sl = sl->next) {
-				if (sl->spacetype == SPACE_VIEW3D) {
-					View3D *v3d = (View3D *)sl;
-					v3d->gpencil_grid_size[0] = GP_DEFAULT_GRID_SIZE;
-					v3d->gpencil_grid_size[1] = GP_DEFAULT_GRID_SIZE;
-					ARRAY_SET_ITEMS(v3d->gpencil_paper_color, 1.0f, 1.0f, 1.0f, 0.7f);
-				}
-			}
-		}
-	}
 
 	/* Handle object-linked grease pencil datablocks */
 	for (Object *ob = main->object.first; ob; ob = ob->id.next) {
@@ -1100,6 +1087,22 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *main)
 				do_version_view_layer_visibility(group->view_layer);
 			}
 		}
+
+		/* init grease pencil grids and paper */
+		if (!DNA_struct_elem_find(fd->filesdna, "gp_paper_opacity", "float", "gpencil_paper_color[3]")) {
+			for (bScreen *screen = main->screen.first; screen; screen = screen->id.next) {
+				for (ScrArea *area = screen->areabase.first; area; area = area->next) {
+					for (SpaceLink *sl = area->spacedata.first; sl; sl = sl->next) {
+						if (sl->spacetype == SPACE_VIEW3D) {
+							View3D *v3d = (View3D *)sl;
+							v3d->gpencil_grid_size[0] = GP_DEFAULT_GRID_SIZE;
+							v3d->gpencil_grid_size[1] = GP_DEFAULT_GRID_SIZE;
+							ARRAY_SET_ITEMS(v3d->gpencil_paper_color, 1.0f, 1.0f, 1.0f, 0.7f);
+						}
+					}
+				}
+			}
+		}
 	}
 
 	{



More information about the Bf-blender-cvs mailing list