[Kde-games-devel] Low framerate in Kdiamond

Ian Wadham ianw2 at optusnet.com.au
Tue May 20 03:26:02 CEST 2008


On Tue, 20 May 2008 06:31 am, Stefan Majewsky wrote:
> Am Montag 19 Mai 2008 22:15:01 schrieb Ian Wadham:
> > I am mystified by this and by Stefan's reply.  I have not played KDiamond
> > before, but it seems quite fast enough to me.  Nothing takes "seconds"
> > here.
> >
> <snip>
> As you see, the problem with the first one or two frames are not played.
> Whether this appears as flicker, may depend on personal perception. For me,
> it flickers (on a 1.8 GHz dual core).
>
> Even if this effect does not matter for you, a delay of 80 msecs is a
> definite sign for inefficiencies, and I've absolutely no idea what is the
> cause. Tomorrow, I'll try some profiling apps.
>
Hmmmm ... I still cannot see where Eugene's problem is coming from ...
i.e. being able to see sprites disappearing one by one and the drop down
taking "seconds".

KGoldrunner works on a frame time of about 60 msec and (this was ages
ago) occasionally QGraphicsView could not keep up.  This depended on
how many sprites were changing and how far apart they were on the
play area.  Sometimes it could take as much as 900 msec, which of
course crippled the gameplay and unpredictably at that.  QGraphicsView
was repainting more of the play area than was necessary, even bits that
did not change.

Have you tested that possibility using "export QT_FLUSH_PAINT=1"?  Hope
it still works for you.  It has recently stopped working for me.  It should
highlight areas that are being repainted.

Also are timings any better if you make a move near the top of the screen,
thus minimising the overall area that is affected by the move?

All the best, Ian W.

P.S. KGoldrunner switched to KGameCanvas back then (about 2 years ago)
and has been using it ever since, with no problems.  QGV has improved its
performance in the meantime, but I am still not convinced it can handle
fast animation consistently and reliably.


More information about the kde-games-devel mailing list