[SDL] Persistent surfaces
Ryan C. Gordon
icculus at icculus.org
Tue Nov 22 02:09:49 PST 2005
> I have tried doing it and it seems the things I "painted" are still there
> the next time, but I want to know if this behavior is expected and
> guaranteed, or if it's just a coincidence. And if it's expected on some but
> not on other systems I'm using (opengl, ddraw, etc.) please let me know on
> which ones that behavior is guaranteed.
Hardware surfaces, generally speaking, can be lost at any
time...especially on Windows. However, assuming that you don't lose the
surfaces through a system event (such as switching out of fullscreen
mode, etc), their contents shouldn't change.
Also, they are very slow if you are modifying them a lot...if you need
direct pixel access every frame, use a software surface...they don't
need locking, they never lose their data, and if you need to modify them
frequently, will actually be faster.
Generally hardware surface locking is intended for surfaces that need to
be locked once for initialization, or only need occasional changes. You
need to be prepared to reload their contents, though, since they can be
lost through various system events that are beyond your control at any time.
More information about the SDL