Camera tracking integration
authorSergey Sharybin <sergey.vfx@gmail.com>
Fri, 29 Jul 2011 15:25:00 +0000 (15:25 +0000)
committerSergey Sharybin <sergey.vfx@gmail.com>
Fri, 29 Jul 2011 15:25:00 +0000 (15:25 +0000)
commit6745e45c48278a6cd5c089509aaaf5f178d13bca
treebf9a213ad7a8d7435b7b8b45815f5be956641184
parentfeffc920bb5dcb482c139299db929c39069cba71
Camera tracking integration
===========================

Implemented 2D stabilization:

- Based on average point of several tracks.
- Tracks for stabilization are controllable from
  "2D stabilization" panel.
- Implemented autoscaling. Could fail if average point is
  too close to frame boundary.
- Background clip in 3D viewport and MovieClip input
  compositor nodes are using stable shot.

Some internal weak things:
- Stable shots aren't cached in moviecache. There is
  only one "slot" for stable shot inside stabilization
  structure.
- This could fail if several threads are requested different
  frames (for example when starting playback, pause to make
  Nodes Editor trigger refresh, continue playback).
- Due to it shouldn't crash i decided to implement better
  caching for stable shots a bit later.
20 files changed:
release/scripts/startup/bl_ui/space_clip.py
source/blender/blenkernel/BKE_movieclip.h
source/blender/blenkernel/BKE_tracking.h
source/blender/blenkernel/intern/depsgraph.c
source/blender/blenkernel/intern/movieclip.c
source/blender/blenkernel/intern/tracking.c
source/blender/blenloader/intern/readfile.c
source/blender/editors/include/ED_clip.h
source/blender/editors/space_clip/clip_draw.c
source/blender/editors/space_clip/clip_editor.c
source/blender/editors/space_clip/clip_intern.h
source/blender/editors/space_clip/clip_ops.c
source/blender/editors/space_clip/space_clip.c
source/blender/editors/space_clip/tracking_ops.c
source/blender/editors/space_view3d/view3d_draw.c
source/blender/makesdna/DNA_space_types.h
source/blender/makesdna/DNA_tracking_types.h
source/blender/makesrna/intern/rna_tracking.c
source/blender/nodes/intern/CMP_nodes/CMP_movieclip.c
source/blender/nodes/intern/CMP_util.h