diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-06-09 15:14:36 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-06-09 15:14:36 +0400 |
commit | 039acbbfef112e140a47dcab05a40d732d293deb (patch) | |
tree | 1f09f15a6052691edf805629865388493ad819e9 /source/blender/nodes/composite | |
parent | f9be7fca1747218323cc53a52842374229cdff4a (diff) |
Homography correction for track preview widget
Use homography transformation for pattern displayed in track preview widget.
Sampling of this pattern happens to resolution of preview widget itself,
which implied some bigger changes in how scopes are working:
- Instead of real pattern store search area in BKE_movieclip_update_scopes,
which is later used for sampling pattern.
- Sampling of pattern happens in ui_draw_but_TRACKPREVIEW from search area
which allows to sample it to actual resolution of preview widget.
- If size of preview widget is not changing, this sampled pattern wouldn't
be re-sampled until scopes are tagged to update.
There are some issues with pattern sampling which seems to happen SamplePlanarPatch,
changing linear sampling to nearest removes that unwanted 1px offset.
Left commented saving of sampled image in ui_draw_but_TRACKPREVIEW which should
help figuring the issue out.
Diffstat (limited to 'source/blender/nodes/composite')
-rw-r--r-- | source/blender/nodes/composite/nodes/node_composite_keyingscreen.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/nodes/composite/nodes/node_composite_keyingscreen.c b/source/blender/nodes/composite/nodes/node_composite_keyingscreen.c index b7ce621a9e1..6149285fdbc 100644 --- a/source/blender/nodes/composite/nodes/node_composite_keyingscreen.c +++ b/source/blender/nodes/composite/nodes/node_composite_keyingscreen.c @@ -91,7 +91,7 @@ static void compute_gradient_screen(RenderData *rd, NodeKeyingScreenData *keying while (track) { VoronoiSite *site = &sites[i]; MovieTrackingMarker *marker = BKE_tracking_get_marker(track, rd->cfra); - ImBuf *pattern_ibuf = BKE_tracking_get_pattern_color_imbuf(ibuf, track, marker, TRUE); + ImBuf *pattern_ibuf = BKE_tracking_get_pattern_imbuf(ibuf, track, marker, TRUE, FALSE); int j; zero_v3(site->color); |