X-Git-Url: https://git.cinelerra-gg.org/git/?p=goodguy%2Fcinelerra.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fvirtualvnode.C;h=20efff4268d4adbe0b535bf14ded81757415ce60;hp=dd7e4fe77f85331ce52a37a6f15c52b698d5a449;hb=592d502d68e409919fb36a31ba60c23f57b00f35;hpb=c905fabd0678fcc8ab9e32e4443ad8709adafefd diff --git a/cinelerra-5.1/cinelerra/virtualvnode.C b/cinelerra-5.1/cinelerra/virtualvnode.C index dd7e4fe7..20efff42 100644 --- a/cinelerra-5.1/cinelerra/virtualvnode.C +++ b/cinelerra-5.1/cinelerra/virtualvnode.C @@ -324,30 +324,15 @@ void VirtualVNode::render_mask(VFrame *output_temp, MaskAuto *keyframe = (MaskAuto*)keyframe_set-> get_prev_auto(start_position_project, PLAY_FORWARD, current); if( keyframe->apply_before_plugins ) return; - - int total_points = 0; - for(int i = 0; i < keyframe->masks.total; i++) - { - SubMask *mask = keyframe->get_submask(i); - int submask_points = mask->points.total; - if(submask_points > 1) total_points += submask_points; - } - -//printf("VirtualVNode::render_mask 1 %d %d\n", total_points, keyframe->value); -// Ignore certain masks - if(total_points <= 2 || - (keyframe->value == 0 && keyframe->mode == MASK_SUBTRACT_ALPHA)) - { - return; - } - + if( !keyframe->has_active_mask() ) return; +/* // Fake certain masks if(keyframe->value == 0 && keyframe->mode == MASK_MULTIPLY_ALPHA) { output_temp->clear_frame(); return; } - +*/ if(use_opengl) { if( !((VDeviceX11*)((VirtualVConsole*)vconsole)->get_vdriver())->can_mask( start_position_project, keyframe_set) )