Skip to content
This repository has been archived by the owner on Sep 27, 2020. It is now read-only.

[WSOD fix] Merge https://github.com/RetroPie/EmulationStation/pull/88 #185

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open

Conversation

rtissera
Copy link

@rtissera rtissera commented Feb 9, 2017

Please make sure your PR is ready to be merged !

  • You added the changes in CHANGELOG.md
  • You choose the right repository branch to make the PR
  • You described the PR as below

Fixes "white screen of death" by rewriting major parts of Texture and VRAM management.

This is just a port / clean merge of RetroPie#88 so all credits go to @fieldofcows for the hard work.

Changes :

  • Add Max VRAM setting to command line
  • Save/Load Max VRAM setting, expose it to the "UI settings" menu
  • Rewrite most of texture data handling to swap out textures when reaching VRAM capping limit.

Related to (put here the others PR in other repositories)

@rtissera rtissera changed the title [WSOD fix] Merge https://github.com/RetroPie/EmulationStation/pull/88 [WSOD fix] Merge https://github.com/RetroPie/EmulationStation/pull/88/commits/6872f472772f2d6a2ae5b3971a4434330b5b9ca3 Feb 9, 2017
@rtissera rtissera changed the title [WSOD fix] Merge https://github.com/RetroPie/EmulationStation/pull/88/commits/6872f472772f2d6a2ae5b3971a4434330b5b9ca3 [WSOD fix] Merge https://github.com/RetroPie/EmulationStation/pull/88 Feb 9, 2017
@gillg
Copy link

gillg commented Feb 9, 2017

Good job ! I trided to merge it few days ago, but I had too much issues... :)

@rtissera
Copy link
Author

Changelog updated, can we discuss merging ?

@rockaddicted
Copy link
Member

@rtissera Ok so I was very busy, but I finally tested your PR. Did you test it form your side ?
So, if I'm using a light theme or activates only few systems to stay below the vram size limit, I have no problem. Everything work well.
But when I exceed the size limit, if I scroll "too fast" the system list, a white screen is displayed before to display the real background image.

Here is a video to illustrate this issue : https://youtu.be/lwur-yMzmJ0

Didn't test it on a "stock" emulationstation, only on an ES based on our fork.
@fieldofcows Does it have the same issue with a stock/retropie ES ?

@fieldofcows
Copy link

That behaviour is by design.

The problem being addressed is that the entire theme does not fit into vram. Hence some sort of 'swapping' of images needs to be performed. What you're seeing is an on-demand based loading of the images. This obviously does not happen instantly so the image is only displayed once memory has been freed, the new image has been streamed in and a texture generated.

I guess it can be improved by better prediction of what images are about to be displayed but ultimately, fast scrolling many MB of images is going to result in visible load artefacts.

@rtissera
Copy link
Author

@rockaddicted Any update on this ?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants