[Bf-blender-cvs] [6f5e366] soc-2016-multiview: Merge branch 'master' into soc-2016-multiview

Tianwei Shen noreply at git.blender.org
Thu Aug 18 19:35:48 CEST 2016


Commit: 6f5e3668aeb9633179ba631ebc3dae7591a1e66c
Author: Tianwei Shen
Date:   Fri Aug 19 00:58:03 2016 +0800
Branches: soc-2016-multiview
https://developer.blender.org/rB6f5e3668aeb9633179ba631ebc3dae7591a1e66c

Merge branch 'master' into soc-2016-multiview

It seems that we have some changes in multiview stablization
happened in the master branch. Solve the conflicts in versioning.

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



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

diff --cc source/blender/blenloader/intern/versioning_270.c
index 2c9c3a3,f6ac42c..5514bfe
--- a/source/blender/blenloader/intern/versioning_270.c
+++ b/source/blender/blenloader/intern/versioning_270.c
@@@ -1324,31 -1343,40 +1345,67 @@@ void blo_do_versions_270(FileData *fd, 
  	}
  
  	{
 +		/* initialize regiondata for each SpaceClip, due to the newly brought RegionSpaceClip */
 +		if (!DNA_struct_elem_find(fd->filesdna, "SpaceClip", "MovieClip", "*secondary_clip")) {
 +			for (bScreen *screen = main->screen.first; screen != NULL; screen = screen->id.next) {
 +				for (ScrArea *sa = screen->areabase.first; sa != NULL; sa = sa->next) {
 +					for (SpaceLink *sl = sa->spacedata.first; sl != NULL; sl = sl->next) {
 +						if (sl->spacetype == SPACE_CLIP) {
 +							ListBase *regionbase = (sl == sa->spacedata.first) ? &sa->regionbase : &sl->regionbase;
 +							for (ARegion *ar = regionbase->first; ar != NULL; ar = ar->next) {
 +								if (ar->regiontype == RGN_TYPE_WINDOW) {
 +									SpaceClip *sc = (SpaceClip *)sl;
 +									RegionSpaceClip *rsc = MEM_callocN(sizeof(RegionSpaceClip), "region data for clip");
 +
 +									rsc->xof = sc->xof;
 +									rsc->yof = sc->yof;
 +									rsc->xlockof = sc->xlockof;
 +									rsc->ylockof = sc->ylockof;
 +									rsc->zoom = sc->zoom;
 +									rsc->flag = RSC_MAIN_CLIP;
 +									ar->regiondata = rsc;
 +								}
 +							}
 +						}
 +					}
 +				}
 +			}
 +		}
++
+ 		if (!DNA_struct_elem_find(fd->filesdna, "MovieTrackingTrack", "float", "weight_stab")) {
+ 			MovieClip *clip;
+ 			for (clip = main->movieclip.first; clip; clip = clip->id.next) {
+ 				MovieTracking *tracking = &clip->tracking;
+ 				MovieTrackingObject *tracking_object;
+ 				for (tracking_object = tracking->objects.first;
+ 				     tracking_object != NULL;
+ 				     tracking_object = tracking_object->next)
+ 				{
+ 					ListBase *tracksbase = BKE_tracking_object_get_tracks(tracking, tracking_object);
+ 					MovieTrackingTrack *track;
+ 					for (track = tracksbase->first;
+ 					     track != NULL;
+ 					     track = track->next)
+ 					{
+ 						track->weight_stab = track->weight;
+ 					}
+ 				}
+ 			}
+ 		}
+ 
+ 		if (!DNA_struct_elem_find(fd->filesdna, "MovieTrackingStabilization", "int", "tot_rot_track")) {
+ 			MovieClip *clip;
+ 			for (clip = main->movieclip.first; clip != NULL; clip = clip->id.next) {
+ 				if (clip->tracking.stabilization.rot_track) {
+ 					migrate_single_rot_stabilization_track_settings(&clip->tracking.stabilization);
+ 					if (!clip->tracking.stabilization.scale) {
+ 						/* ensure init.
+ 						 * Was previously used for autoscale only,
+ 						 * now used always (as "target scale") */
+ 						clip->tracking.stabilization.scale = 1.0f;
+ 					}
+ 				}
+ 			}
+ 		}
  	}
  }
diff --cc source/blender/makesdna/DNA_tracking_types.h
index 4e0f991,42b72c1..54465f6
--- a/source/blender/makesdna/DNA_tracking_types.h
+++ b/source/blender/makesdna/DNA_tracking_types.h
@@@ -160,21 -158,12 +160,24 @@@ typedef struct MovieTrackingTrack 
  	 * Used to prevent jumps of the camera when tracks are appearing or
  	 * disappearing.
  	 */
- 	float weight, pad;
+ 	float weight;
+ 
+ 	/* track weight especially for 2D stabilization */
+ 	float weight_stab;
  } MovieTrackingTrack;
  
 +typedef struct MovieTrackingCorrespondence {
 +	struct MovieTrackingCorrespondence *next, *prev;
 +
 +	char name[64];  /* MAX_NAME */
 +
 +	MovieTrackingTrack *self_track;
 +	MovieTrackingTrack *other_track;
 +
 +	struct MovieClip *self_clip;
 +	struct MovieClip *other_clip;
 +} MovieTrackingCorrespondence;
 +
  typedef struct MovieTrackingPlaneMarker {
  	/* Corners of the plane in the following order:
  	 *




More information about the Bf-blender-cvs mailing list