Complete.Org: Mailing Lists: Archives: freeciv-dev: March 2003:
[Freeciv-Dev] (PR#3769) Unit movement buggy and slow
Home

[Freeciv-Dev] (PR#3769) Unit movement buggy and slow

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: ChrisK@xxxxxxxx
Subject: [Freeciv-Dev] (PR#3769) Unit movement buggy and slow
From: "Jason Short" <jdorje@xxxxxxxxxxxxxxxxxxxxx>
Date: Sun, 23 Mar 2003 10:27:27 -0800
Reply-to: rt@xxxxxxxxxxxxxx

[ChrisK@xxxxxxxx - Sat Mar 22 21:32:06 2003]:

> CVS 22 MAR 2003 GTK 1.2
> 
> Hello,
> 
> some issues about unit movement on my 200 MHz box.
> 
> In short: it's no fun anymore :-(
> 
> Goto is significantly slower now (depending on route) and consumes
> much CPU.

Iso or non-iso view?  Sounds like this was caused by the non-iso view
drawing unification - and can be fixed by further unification.

> Moving transporters (with units) in and out of cities is slow.

Is this a recent change?

> Transporters with units are, at beginning and end of turn, displayed as
> empty for a short moment.

Is this the result of the new flush code?  The changes have not been
fully ported to all clients.  Can you reproduce it with this patch?

jason

Index: client/gui-gtk/mapctrl.c
===================================================================
RCS file: /home/freeciv/CVS/freeciv/client/gui-gtk/mapctrl.c,v
retrieving revision 1.76
diff -u -r1.76 mapctrl.c
--- client/gui-gtk/mapctrl.c    2003/02/17 22:49:27     1.76
+++ client/gui-gtk/mapctrl.c    2003/03/23 18:26:47
@@ -227,7 +227,7 @@
   struct map_position *cross_list=(struct map_position *)data;
 
   while (cross_list->x >= 0) {
-    refresh_tile_mapcanvas(cross_list->x, cross_list->y, TRUE);
+    refresh_tile_mapcanvas(cross_list->x, cross_list->y, FALSE);
     cross_list++;
   }
 }
Index: client/gui-gtk/mapview.c
===================================================================
RCS file: /home/freeciv/CVS/freeciv/client/gui-gtk/mapview.c,v
retrieving revision 1.164
diff -u -r1.164 mapview.c
--- client/gui-gtk/mapview.c    2003/03/18 02:08:22     1.164
+++ client/gui-gtk/mapview.c    2003/03/23 18:26:47
@@ -114,9 +114,10 @@
     else
       punit0->hp--;
 
-    refresh_tile_mapcanvas(punit0->x, punit0->y, TRUE);
-    refresh_tile_mapcanvas(punit1->x, punit1->y, TRUE);
+    refresh_tile_mapcanvas(punit0->x, punit0->y, FALSE);
+    refresh_tile_mapcanvas(punit1->x, punit1->y, FALSE);
 
+    flush_dirty();
     gdk_flush();
     usleep_since_timer_start(anim_timer, 10000);
 
@@ -161,8 +162,8 @@
   }
 
   set_units_in_combat(NULL, NULL);
-  refresh_tile_mapcanvas(punit0->x, punit0->y, TRUE);
-  refresh_tile_mapcanvas(punit1->x, punit1->y, TRUE);
+  refresh_tile_mapcanvas(punit0->x, punit0->y, FALSE);
+  refresh_tile_mapcanvas(punit1->x, punit1->y, FALSE);
 }
 
 /**************************************************************************

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