On Sun, Jul 20, 2008 at 1:21 AM,  <[EMAIL PROTECTED]> wrote:
> Maybe there is a bug in memry manager or something that does not free sdl
> surfaces after they are used?

There were a handful of memory leaks that have been closed in the
meantime. So I suggest you try the latest SVN version to see if that
performs better.

It would of course also be possible to reduce the memory usage of
Pingus further, there certainly is still quite a bit of room left.

Some things that come to mind:

* resource system got ripped out in the ClanLib->SDL switch and isn't
back yet, so some surfaces are keep in memory twice even so they are
identical (I'll fix that in the next days/weeks)

* collision map is keep in memory as one piece instead of as sparse
tiles, so we waste a bit of space (colmap consumes ~2MB for a
1920x1200 level)

* graphical level map is hold in memory twice (once in software and
once on the GPU) and hold as 32bit RGBA, this could certainly be
optimized for some systems, i.e. use 16bit or 24bit RGB + Colorkey,
share the GPU and software surfaces, since they are identical on some
platforms or don't keep them in software at all (levelmap takes around
10MB for a 1920x1200 level)

* the whole screenstack is kept in memory, so the menu background and
such are kept in memory even when not visible

-- 
WWW: http://pingus.seul.org/~grumbel/
Blog: http://grumbel.blogspot.com/
JabberID: xmpp:[EMAIL PROTECTED]
ICQ: 59461927


_______________________________________________
Pingus-Devel mailing list
Pingus-Devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/pingus-devel

Reply via email to