|
View:
New views
6 Messages
—
Rating Filter:
Alert me
|
|
|
Tile engineHi,
I would like to ask if we have tile row hinting? Described here http://git.gnome.org/cgit/gimp/tree/NEWS?h=gimp-1-2 as "The image compositing has been speed up by implementing hints to the tile structure. That way the render-engine knows for example if a row is totally transparent and can skip the calculation." Dimitry, do you know about any papers/articles describing the tile engine? _______________________________________________ kimageshop mailing list kimageshop@... https://mail.kde.org/mailman/listinfo/kimageshop |
|
|
Re: Tile engine
Well, we do not have it as you described, we have extent() mechanism only to skip transparent pixels. Dimitry, do you know about any papers/articles describing the tile engine? Which do you mean? General science articles? I can't remember any =( But i shall take a look. If you mean ones describing our engine, we could discuss it, and i could write some if needed. I was publishing some initial ideas to the mail-list and a blog. Some of them have transformed a bit during implementation, but only a bit. =) http://dimula73.blogspot.com/ -- Dmitry Kazakov _______________________________________________ kimageshop mailing list kimageshop@... https://mail.kde.org/mailman/listinfo/kimageshop |
|
|
Re: Tile engineOn Wednesday 14 October 2009 18:18:41 Dmitry Kazakov wrote:
> > I would like to ask if we have tile row hinting? > > Described here http://git.gnome.org/cgit/gimp/tree/NEWS?h=gimp-1-2 as > > > > "The image compositing has been speed up by > > implementing hints to the tile structure. > > That way the render-engine knows for example > > if a row is totally transparent and can skip > > the calculation." > > Well, we do not have it as you described, we have extent() mechanism only > to skip transparent pixels. KisPaintDevice::Extent() is faster then KisPaintDevice::ExactBounds(), exactBounds() is more precise but slow (AFAIK it does scanlines) Would we benefit from that idea the GIMP is using? Would it be possible for you to implement it in the tile engine? > If you mean ones describing our engine, we could discuss it, and i could > write some if needed. > > I was publishing some initial ideas to the mail-list and a blog. Some of > them have transformed a bit during implementation, but only a bit. =) > http://dimula73.blogspot.com/ I think your blog is enough. I just want to have basic understanding what is doing Krita behind and if I can help to make the tile engine work faster using OpenCL or OpenGL somehow.. If you have some spare time =) you can put high-level description to http://wiki.koffice.org. BTW What is the status of the mip mapping and your tile engine? When we will switch to your tile engine? Lukas _______________________________________________ kimageshop mailing list kimageshop@... https://mail.kde.org/mailman/listinfo/kimageshop |
|
|
Re: Tile engineOn Wednesday 14 October 2009, Dmitry Kazakov wrote:
> > "The image compositing has been speed up by > > implementing hints to the tile structure. > > That way the render-engine knows for example > > if a row is totally transparent and can skip > > the calculation." > > Well, we do not have it as you described, we have extent() mechanism only > to skip transparent pixels. > extent() gives the area covered by allocated tiles, exactbounds() the area covered by non-transparent pixels. -- Boudewijn Rempt | http://www.valdyas.org _______________________________________________ kimageshop mailing list kimageshop@... https://mail.kde.org/mailman/listinfo/kimageshop |
|
|
Re: Tile engineOn Wednesday 14 October 2009 19:42:19 Boudewijn Rempt wrote:
> On Wednesday 14 October 2009, Dmitry Kazakov wrote: > > > "The image compositing has been speed up by > > > implementing hints to the tile structure. > > > That way the render-engine knows for example > > > if a row is totally transparent and can skip > > > the calculation." > > > > Well, we do not have it as you described, we have extent() mechanism only > > to skip transparent pixels. > > extent() gives the area covered by allocated tiles, exactbounds() the area > covered by non-transparent pixels. > Would be possible to add feature to iterators so that they would check how big the rect actually is when accessing the data? Would that add too much overhead? The client usually can do that too but it complicates the design. Eg. when I put pixels with sumi, I could check the QRect, but I would have to change the method to paint anti-aliased pixels, e.g. for spray every rasterizing method would have to be changed to compute the rect and I'm trying to have rasterizing methods which could go to KisPainter so that I can reuse them. _______________________________________________ kimageshop mailing list kimageshop@... https://mail.kde.org/mailman/listinfo/kimageshop |
|
|
Re: Tile engineOn Wednesday 14 October 2009, LukasT.dev@... wrote:
> I think your blog is enough. I just want to have basic understanding what > is doing Krita behind and if I can help to make the tile engine work faster > using OpenCL or OpenGL somehow.. A tiles engine is just a mechanism to store and retrieve raw datadumps. Combining OpenGL with a tiles engine really only makes sense when the tile data itself resides on the graphics card (so that the *rest* of Krita can use OpenGL commands to transform the data on the graphics card directly). Hence, IMO, you should not use OpenGL to somehow make the tile engine work faster, since it merely exists to supply other parts of Krita with data. Bart _______________________________________________ kimageshop mailing list kimageshop@... https://mail.kde.org/mailman/listinfo/kimageshop |
| Free embeddable forum powered by Nabble | Forum Help |