support for subframe animation evaluation for masks.

This commit is contained in:
Campbell Barton
2012-06-08 09:35:51 +00:00
parent ae3062b741
commit 4413903370
3 changed files with 6 additions and 6 deletions

View File

@@ -120,7 +120,7 @@ void BKE_mask_coord_to_movieclip(struct MovieClip *clip, struct MovieClipUser *u
void BKE_mask_update_display(struct Mask *mask, float ctime);
void BKE_mask_evaluate_all_masks(struct Main *bmain, float ctime, const int do_newframe);
void BKE_mask_evaluate(struct Mask *mask, float ctime, const int do_newframe);
void BKE_mask_evaluate(struct Mask *mask, const float ctime, const int do_newframe);
void BKE_mask_update_scene(struct Main *bmain, struct Scene *scene, const int do_newframe);
void BKE_mask_parent_init(struct MaskParent *parent);
void BKE_mask_calc_handle_adjacent_interp(struct MaskSpline *spline, struct MaskSplinePoint *point, const float u);
@@ -145,7 +145,7 @@ void BKE_mask_layer_shape_to_mask_interp(struct MaskLayer *masklay,
struct MaskLayerShape *masklay_shape_b,
const float fac);
struct MaskLayerShape *BKE_mask_layer_shape_find_frame(struct MaskLayer *masklay, const int frame);
int BKE_mask_layer_shape_find_frame_range(struct MaskLayer *masklay, const int frame,
int BKE_mask_layer_shape_find_frame_range(struct MaskLayer *masklay, const float frame,
struct MaskLayerShape **r_masklay_shape_a,
struct MaskLayerShape **r_masklay_shape_b);
struct MaskLayerShape *BKE_mask_layer_shape_alloc(struct MaskLayer *masklay, const int frame);

View File

@@ -1463,7 +1463,7 @@ void BKE_mask_spline_ensure_deform(MaskSpline *spline)
}
}
void BKE_mask_evaluate(Mask *mask, float ctime, const int do_newframe)
void BKE_mask_evaluate(Mask *mask, const float ctime, const int do_newframe)
{
MaskLayer *masklay;
@@ -1475,7 +1475,7 @@ void BKE_mask_evaluate(Mask *mask, float ctime, const int do_newframe)
MaskLayerShape *masklay_shape_b;
int found;
if ((found = BKE_mask_layer_shape_find_frame_range(masklay, (int)ctime,
if ((found = BKE_mask_layer_shape_find_frame_range(masklay, ctime,
&masklay_shape_a, &masklay_shape_b)))
{
if (found == 1) {
@@ -1750,7 +1750,7 @@ MaskLayerShape *BKE_mask_layer_shape_find_frame(MaskLayer *masklay, const int fr
}
/* when returning 2 - the frame isnt found but before/after frames are */
int BKE_mask_layer_shape_find_frame_range(MaskLayer *masklay, const int frame,
int BKE_mask_layer_shape_find_frame_range(MaskLayer *masklay, const float frame,
MaskLayerShape **r_masklay_shape_a,
MaskLayerShape **r_masklay_shape_b)
{

View File

@@ -2067,7 +2067,7 @@ static ImBuf *seq_render_mask_strip(
return NULL;
}
BKE_mask_evaluate(seq->mask, (int)(seq->mask->sfra + nr), TRUE);
BKE_mask_evaluate(seq->mask, seq->mask->sfra + nr, TRUE);
maskbuf = MEM_callocN(sizeof(float) * context.rectx * context.recty, __func__);