track, parent_node)
{
//VRender *vrender = ((VirtualVConsole*)vconsole)->vrender;
- fader = new FadeEngine(renderengine->preferences->processors);
+ //fader = new FadeEngine(renderengine->preferences->processors);
masker = new MaskEngine(renderengine->preferences->processors);
alpha = 1;
}
VirtualVNode::~VirtualVNode()
{
- delete fader;
+ //delete fader;
delete masker;
}
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) )