OpenGL Canvas or Not
boud at valdyas.org
Fri Oct 18 09:21:28 UTC 2013
On Fri, 18 Oct 2013, David Revoy wrote:
> As Boudewijn linked ; a bug report is open about it : https://bugs.kde.org/show_bug.cgi?id=313502
> Trilinear is always blury ; at any zoom level. Qpainter(CPU) is a bit less blury.
> Choosing "Bilinear" is actually the best option ; from 100% to 50% you'll match the Gimp/Mypaint/Azdrawing
> Above 50% ( 33% , 25%, 17%, 12% ) ; the Bilinear filter will bug ; and the rendering will be bad ( total
> aliasing ). Equal to 'Nearest'.
> I adapted my workflow to paint using mostly 50% as a workaround. And when I do sketch/line art at 25% , I have a
> workaround changing the code , as I explain on the bug report.
I tried to make that automatic, but it needs regenerating the mipmaps at
those those zoom level breaks, and that didn't work out on my gpu's, so I
got really weird results.
The proper thing is to do the scaling in the shader, probably using the
bicubic or the lanczos algorthm. I started work on that, got stuck...
Dmitry is going to take a look, too.
For the qpainter canvas, a solution could be to use Krita's internal
bicubic scaling algorithm, which gives good results (you can check that by
scaling the image itself), but might be a bit too slow. Of course, that
might be solvable by using Vc to vectorize the scaling algorithms, which
wouldn't be a bad idea at all in any case.
More information about the kimageshop