[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