Complete.Org: Mailing Lists: Archives: freeciv-dev: February 2004:
[Freeciv-Dev] Re: (PR#7331) Speeding up the map view
Home

[Freeciv-Dev] Re: (PR#7331) Speeding up the map view

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: freeciv-dev <freeciv-dev@xxxxxxxxxxx>
Subject: [Freeciv-Dev] Re: (PR#7331) Speeding up the map view
From: Arnstein Lindgard <a-l@xxxxxxx>
Date: Sun, 1 Feb 2004 10:06:34 +0100

On Tue, 27 Jan 2004 04:48:58 -0800 Raimar Falke wrote:

[Speeding up mapview etc]

Question: Was it decided that FS will use SDL? (I forgot).

The attached images were posted earlier by Jason, one describing two
different tile drawing methods - partial tile drawing and tricky
buffered. Which one will you be using?

Will partial redrawing be a sufficient speedup, or do you need to
frequently redraw the mapview when no or only small parts of the
backing store can be reused?

If reusing the BS is useful, PR#4289 Pixel Scroller actually contains
a blitter driver for non iso pixmaps, although it isn't utilized
because I changed my mind and decided on a different method. Still it
could probably be expanded to iso maps without too much trouble.

On the subject of creating a new cahcing BS:

For a standard size map's iso store, the memory consumption should be:

( 80 * 50 * 64 * 32 / (8 * 2) ) bytes (0.5 MB) pr bitmap,

which is 3 MB pr pixmap using 64 colors (2^6). For a maximum size
map, it should be 15 MB. Then I supposed we'd have to try and
allocate this memory, and fallback to a slower drawing code for PCs
that fail to allocate. Still it should be worth it if the only
problem is that very old PC's become slower on very big maps.

I still like this idea if we could put terrain in the extra BS, and
thus avoid iso overlapping draws - and save cpu cycles for animation
/ scrolling. I'm not quite sure why you wanted to multiply with 9.


Arnstein




Attachment: tricky_buffered.png
Description: PNG image

Attachment: partial-redraw.png
Description: PNG image


[Prev in Thread] Current Thread [Next in Thread]