Blender Git Loki
Git Commits -> Revision c62077c
Revision c62077c by Sergey Sharybin (master) May 14, 2012, 17:23 (GMT) |
Per-track grease pencil data blocks Added support of tracks to have their own grease pencil datablock. This is controllable by Clip/Track toggle in Grease Pencil panel in Clip Editor. This toggle shows whether grease pencil stroke should go to movie clip's datablock or to active track. As soon as this toggle is switched to Track, all further strokes would be added to active track and only strokes which belongs to active track would be displayed on the screen. This strokes would be relative to track's position, which means if one made some strokes to track and started moving it, stokes would be moved together with track. Different tracks might share the same grease pencil datablock. Also hide draw modes which are not supported by space clip. Initial idea why tracks should have grease pencil datablocks was to support easy mask creation for tracking. This seemed fastest and easiest way to achieve mask editing for tracks. To get mask for specified track there's function BKE_tracking_track_mask_get which requires MovieTracking structure, track for which mask is creating and also width and height of current overall frame. it'll return ImBuf with mask (probably it's more like overkill, because internally it works with single-channel value buffer and probably that's one should be passing to libmv). Probably hacking grease pencil in such way is not ideal solution, but that part of code might be cleaned up further and it seems to be straightforward to use grease pencil for such a purpose. Note: this is commit to tomato branch, not to trunk. |
Commit Details:
Full Hash: c62077ce66ca40b564176e5fb6f8b1c1907626c4
SVN Revision: 46639
Parent Commit: 389ae71
Lines Changed: +238, -24
16 Modified Paths:
/source/blender/blenkernel/BKE_tracking.h (+1, -0) (Diff)
/source/blender/blenkernel/CMakeLists.txt (+1, -0) (Diff)
/source/blender/blenkernel/intern/tracking.c (+102, -0) (Diff)
/source/blender/blenkernel/SConscript (+1, -0) (Diff)
/source/blender/blenloader/intern/readfile.c (+4, -3) (Diff)
/source/blender/blenloader/intern/writefile.c (+1, -1) (Diff)
/source/blender/editors/gpencil/gpencil_buttons.c (+22, -7) (Diff)
/source/blender/editors/gpencil/gpencil_edit.c (+18, -3) (Diff)
/source/blender/editors/gpencil/gpencil_paint.c (+10, -0) (Diff)
/source/blender/editors/space_clip/clip_draw.c (+40, -7) (Diff)
/source/blender/editors/space_clip/space_clip.c (+5, -2) (Diff)
/source/blender/makesdna/DNA_space_types.h (+8, -1) (Diff)
/source/blender/makesdna/DNA_tracking_types.h (+3, -0) (Diff)
/source/blender/makesrna/intern/rna_movieclip.c (+1, -0) (Diff)
/source/blender/makesrna/intern/rna_space.c (+13, -0) (Diff)
/source/blender/makesrna/intern/rna_tracking.c (+8, -0) (Diff)
/source/blender/blenkernel/CMakeLists.txt (+1, -0) (Diff)
/source/blender/blenkernel/intern/tracking.c (+102, -0) (Diff)
/source/blender/blenkernel/SConscript (+1, -0) (Diff)
/source/blender/blenloader/intern/readfile.c (+4, -3) (Diff)
/source/blender/blenloader/intern/writefile.c (+1, -1) (Diff)
/source/blender/editors/gpencil/gpencil_buttons.c (+22, -7) (Diff)
/source/blender/editors/gpencil/gpencil_edit.c (+18, -3) (Diff)
/source/blender/editors/gpencil/gpencil_paint.c (+10, -0) (Diff)
/source/blender/editors/space_clip/clip_draw.c (+40, -7) (Diff)
/source/blender/editors/space_clip/space_clip.c (+5, -2) (Diff)
/source/blender/makesdna/DNA_space_types.h (+8, -1) (Diff)
/source/blender/makesdna/DNA_tracking_types.h (+3, -0) (Diff)
/source/blender/makesrna/intern/rna_movieclip.c (+1, -0) (Diff)
/source/blender/makesrna/intern/rna_space.c (+13, -0) (Diff)
/source/blender/makesrna/intern/rna_tracking.c (+8, -0) (Diff)