FULLSCREEN and DOUBLEBUF

Paul St George email at paulstgeorge.com
Tue Jun 12 12:57:53 EDT 2018


> Dennis Lee Bieber wrote:
>>     Both may be dependent upon the actual hardware graphics board and 
>> the
>> drivers for said board.
> On 11/06/2018 01:47, Gregory Ewing wrote:
> My guess is that if your surface is not fullscreen or is not
> a hardware surface, then you're always drawing into an ofscreen
> buffer that gets copied to the screen when display.flip() is
> called. In other words, it's effectively double-buffered
> whether you request it or not.
>
> The only time it's an issue is when you're drawing directly
> to the screen memory, i.e. both FULLSCREEN and HWSURFACE
> where your hardware and drivers support that.
>
> My suggestion is to just always specify DOUBLEBUF and not
> worry about what's going on behind the scenes. That will
> almost always give the result you want, i.e. a flicker-free
> display.
>
> The only time it would be an issue is if you wanted your
> surface to *not* be double-buffered for some reason, but
> that would be a rare situation.
>
Thank you! Your intervention could not have been more timely. I was just 
about to throw away the screen and try again with another. I want to use 
display.flip() and thought that was dependent on being able to set 
DOUBLEBUF. The surface is fullscreen.

I had considered meddling with the config.txt to try to enable* 
HWSURFACE but from what you say, this is unnecessary. Have I understood 
you right?

Paul

* Perhaps by uncommenting #dtparam=spi=on



More information about the Python-list mailing list