Once again I discovered bad behaviour on AA when an elliptical brush is rotated, therefore I decided to rewrite the function. I'm attaching the patch. I have tested this quiet a bit and it seems to solve all issues and I think it even improves AA quality.
Since the function is more complex than the previous, I decided to do some profiling. I have pasted a snippet of the code I used to do this here: http://pastebin.com/MpXFQCx6 The results are VERY weird. This is what I get for not inlined calls: no-aa time: 856 ms aa time: 816 ms And this is what I get for inlined calls: no-aa time: 855 ms aa time: 482 ms So it appears that the "calculate_rr" function is not getting inlined for some reason, but even when not inlined "calculate_rr_antialiased" finishes faster for some reason I can't explain. Either some compiler voodoo is happening here or my profiling code is bogus. I have also noticed that when the brush aspect ratio is very high and the hardness is low, the dark spot at the center of the dabs tend to disappear, however this is due to it being antialiased and I believe there's little I can do here. -- Micael Dias
0001-brushlib-rewrite-antialiasing-approximation.patch
Description: Binary data
_______________________________________________ Mypaint-discuss mailing list [email protected] https://mail.gna.org/listinfo/mypaint-discuss
