About mipmapping and further planning

LukasT.dev@gmail.com lukast.dev at gmail.com
Fri Jul 9 16:43:07 CEST 2010


Zdrastvuj tavarish,

On Friday, July 09, 2010 15:56:24 Dmitry Kazakov wrote:
> Hi!
> 
> I was considering implementation of mipmapping and i've finally come to a
> conclusion. We really needn't mipmapping! :P

:P
 
> Well, now in details. What the mipmapping technique is and what it isn't?
> Mipmapping is used for doing the scaling of textures fast. The main idea of
> the mipmapping is that we prepare the pyramid first, and then just use the
> same pyramid for wrapping onto objects of different sizes.
> 
> What do we have i Krita? Our "textures" are updated with every stroke, so
> the pyramid will have to be rebuild after every transaction, that means
> that we will have to do up to 30% more work. And what are the benefits of
> the pyramid? There is only one, actually: "fast" zooming. Have you ever
> seen slow zoom operation in Krita? Just try it! I've checked it today:
> Ctrl-+/Ctrl-- on the image of 5000x5000px is performed in less than a
> second. I think this is more than enough for most usecases.

Mip-mapping is also about the quality of the image.
If you zoom, you compute the image interpolated between two prescaled levels.
What is your opinion? Without pyramids we would scale down twice to that 
levels and that would need to be benchmarked.
 
> So my nearest plans are:
> 
> 1) To adopt more complicated maths for the scheduler optimization
> 2) The swapper (btw, what is the priority of it? how much do we need it?)

If swapper is important for infinite undo, then I would go for the swapper as I 
miss infinite undo.

Cheers


More information about the kimageshop mailing list