https://bugs.documentfoundation.org/show_bug.cgi?id=92018

            Bug ID: 92018
           Summary: Implement caching for native rendering in OpenGL
                    rendering
           Product: LibreOffice
           Version: unspecified
          Hardware: Other
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: medium
         Component: graphics stack
          Assignee: [email protected]
          Reporter: [email protected]

One of the slowest parts of our current OpenGL rendering is rendering the
native widgets. They are currently rendered to a pixmap and later transferred
as texture to the GPU. That is a slow process and costs valuable time in the
rendering pipeline as it blocks the rendering and causes thousands of
unnecessary OpenGL calls.

it might also benefit our normal rendering if we can cache some of the widgets
that are rendered over and over again.

We should implement a cache for these native widgets that stores a texture id
in the OpenGL case and maybe a pixmap in the normal case.

For the cache to work correctly we need to use all relevant information as
cache key and have a mechanism to kick out unused entries from the cache.

In the OpenGL case we might also want to use a OpenGL texture atlas to avoid
texture fragmentation which I'll add as a second easy hack.

The place to look for it is in GtkSalGraphics::drawNativeControl.

-- 
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Libreoffice-bugs mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs

Reply via email to