Just curious, is the approach in SRCOVER_MASKFILL faster? I think yes, but it adds and an additional branches which can affect performance. Did you measure the difference?

On 22.03.16 14:35, Prahalad Kumar Narayanan wrote:
Observation from SRCOVER_MASKFILL
     1.  The mask fill reduces computations by through multiple if(...) 
conditions.
                   Each if condition affirms whether the next set of 
computations are required.
     2.  Optimization 1: If mask value is 0- skip entire logic.
     3.  Optimization 2: If mask value is maximum, say 255, take srcA directly 
without multiplying with maskAlpha ( Reason: 1 * srcAlpha = srcAlpha )
     4.  Optimization 3: Compute pre-multiplied resColor in two steps. First 
with srcColor and then with dstColor.
                   If the resAlpha from 1st step (i.e., srcColor) is fully 
opaque, avoid blending dstColor altogether.



--
Best regards, Sergey.

Reply via email to