-
Bug
-
Resolution: Fixed
-
P4
-
9, 10
These comments are from the new Marlin AlphaConsumer used for filling shapes in the SW pipeline:
236 // use x instead of pix_from as it cause artefacts:
237 // note: it would be more efficient to skip all those empty pixels [x to pix_from[
238 // but the native implementation must be fixed too.
239 // pr.emitAndClearAlphaRow(alpha_map, alphaDeltas, pix_y, pix_from, pix_to, rowNum);
240 pr.emitAndClearAlphaRow(alpha_map, alphaDeltas, pix_y, x, pix_to, rowNum);
As a result, all pixels from the left edge of the clip to the start of the shape must be processed even though we know that they are all 0-alpha coverage. This likely has a large performance drain on the SW pipeline.
236 // use x instead of pix_from as it cause artefacts:
237 // note: it would be more efficient to skip all those empty pixels [x to pix_from[
238 // but the native implementation must be fixed too.
239 // pr.emitAndClearAlphaRow(alpha_map, alphaDeltas, pix_y, pix_from, pix_to, rowNum);
240 pr.emitAndClearAlphaRow(alpha_map, alphaDeltas, pix_y, x, pix_to, rowNum);
As a result, all pixels from the left edge of the clip to the start of the shape must be processed even though we know that they are all 0-alpha coverage. This likely has a large performance drain on the SW pipeline.