• Zhigang Gong's avatar
    render: Enable more componentAlpha support. · c6ce44d8
    Zhigang Gong authored
    Actually only PictOpAtop,PictOpAtopReverse and PictOpXor
    can't be implemented by using single source blending.
    All the other can be easily support. Slightly change
    the code to support them. Consider those three Ops
    are not frequenly used in real application. We simply
    fallback them currently.
    
    PictOpAtop: 		s*mask*dst.a + (1 - s.a*mask)*dst
    PictOpAtopReverse: 	s*mask*(1 - dst.a) + dst *s.a*mask
    PictOpXor:		s*mask*(1 - dst.a) + dst * (1 - s.a*mask)
    
    The two oprands in the above three ops are all reated to dst and
    the blend factors are not constant (0 or 1), it's hardly to
    convert it to single source blend.
    
    Now, the rendercheck is runing more smoothly.
    Signed-off-by: default avatarZhigang Gong <zhigang.gong@linux.intel.com>
    c6ce44d8
glamor_render.c 104 KB