[SailfishDevel] Upcoming behavioural change with how graphics resources are handled.

Gunnar Sletta gunnar at sletta.org
Thu Oct 2 07:51:51 UTC 2014


On 02 Oct 2014, at 09:29, <dcaliste at free.fr> <dcaliste at free.fr> wrote:

> Hello,
> 
> Selon Iosif Hamlatzis <i.hamlatzis at gmail.com>:
>> Reading all these and previous similar changes I was wondering why other
>> mobile platforms don't have this issue?
> IMHO, there is a misunderstanding here, as far as I've understood, most of
> applications don't have to take care of going to background and coming back.
> When the application comes back, there is a repaint call() that is done
> automatically, and the application redraws itself. The only corner case is when
> the application supposes that the repaint call doesn't start with a clear()
> call. For instance when the drawing operation is heavy and redraw is done only
> by updating the buffer. In that case only the developer would have to redraw
> from scratch when the application comes back from background.

You are right and the cornercase is even a bit more narrow. It is if a QML application relies on an OpenGL resource being present after coming back. In this case, because Canvas is set to use a FramebufferObject (which is not the default), the resource is a fresh one after coming back. 

Any QML ui which uses only Silica or the stock QtQuick components is still unaffected.

Releasing doesn't happen for pure EGL/GL or SDL based games. It is only for QML applications which explicitly use OpenGL resources.

> It seems to me that holding the copy of the buffer before going to background is
> indeed what the new way to do is trying to avoid, keep memory (a copy of the
> full screen is costly) usage low when multitasking.
> 
> My two cents, hoping that I'm not wrong,
> 
> Damien.
> _______________________________________________
> SailfishOS.org Devel mailing list
> To unsubscribe, please send a mail to devel-unsubscribe at lists.sailfishos.org



More information about the Devel mailing list